Win2003 安装sql2008 SQL Server Management Studio 2008 官方版 64位/32位
[ 2020-06-17 15:31:37 | 作者: admin ]
p.s. 安装Management Studio 2008前提条件
1、检查下系统更新,不检查应该也没事
2、安装 SQL Server 2008 Express 32位 中文简体安装包
3、安装 .net 3.5 sp1
4、安装 powershell 2.0 for win2003 (会开启和监听 5985 http 和5986 https 两个端口,外网防火墙需要做屏蔽以免被利用)
5、SQL Server Management Studio 2008 32位
特别注意:安装Management Studio过程中,需要选择执行SQL Server 2008 的全新安装,如果选择向SQL Server 2008 的现有实例中添加功能,则不会出现 管理工具 的选项
SQL Server ...
阅读全文…
1、检查下系统更新,不检查应该也没事
2、安装 SQL Server 2008 Express 32位 中文简体安装包
3、安装 .net 3.5 sp1
4、安装 powershell 2.0 for win2003 (会开启和监听 5985 http 和5986 https 两个端口,外网防火墙需要做屏蔽以免被利用)
5、SQL Server Management Studio 2008 32位
特别注意:安装Management Studio过程中,需要选择执行SQL Server 2008 的全新安装,如果选择向SQL Server 2008 的现有实例中添加功能,则不会出现 管理工具 的选项
SQL Server ...
阅读全文…
nginx 虚拟目录的设置alias
[ 2020-06-13 15:18:12 | 作者: admin ]
p.s. 在增加虚拟目录的时候,location块可以使用root和alias,差别是使用root后,需要url中再多加个虚拟目录
使用alias 会直接映射 /data/code_img/1.png
使用root 会映射为 /data/code_img/img/1.png
静态文件只要如上面设置即可,但是php的文件需要做下面的处理
阅读全文…
location ^~ /img/ {
alias /data/imgs/;
}
当浏览器访问 http://127.0.0.1/img/1.pngalias /data/imgs/;
}
使用alias 会直接映射 /data/code_img/1.png
使用root 会映射为 /data/code_img/img/1.png
静态文件只要如上面设置即可,但是php的文件需要做下面的处理
location ~ ^/public/.+\.php$
{
root /data/www/web/public;
rewrite /public/(.*\.php?) /$1 break;
...{
root /data/www/web/public;
rewrite /public/(.*\.php?) /$1 break;
阅读全文…
使用preg_match和preg_match_all正则书写正确,但匹配不到的解决办法
[ 2020-06-13 10:32:56 | 作者: admin ]
使用preg_match正则书写正确,但匹配不到的解决办法
以下建立在正则书写正确,且有匹配内容的前提下,有可能是preg_match对匹配的字符串有长度限制的问题
解决办法(任选一个):
1.在php.ini中加入(随便放到哪里):pcre.backtrack_limit=-1
2.ini_set(‘pcre.backtrack_limit', 999999999); (php 5.2.0版本之后可用)
另外pcre.recursion_limit是PCRE的递归限制,这个项如果设很大的值,会消耗所有进程的可用堆栈,最后导致PHP崩溃。
实际项目应用中,最好也对内存进行限定设置:ini_set(‘memory_limit', '64M');
https://blog.lmlyz.online/index/detail/id/64.html
以下建立在正则书写正确,且有匹配内容的前提下,有可能是preg_match对匹配的字符串有长度限制的问题
解决办法(任选一个):
1.在php.ini中加入(随便放到哪里):pcre.backtrack_limit=-1
2.ini_set(‘pcre.backtrack_limit', 999999999); (php 5.2.0版本之后可用)
另外pcre.recursion_limit是PCRE的递归限制,这个项如果设很大的值,会消耗所有进程的可用堆栈,最后导致PHP崩溃。
实际项目应用中,最好也对内存进行限定设置:ini_set(‘memory_limit', '64M');
https://blog.lmlyz.online/index/detail/id/64.html
php抓取微信文章,另外就是图片防盗链的解决
[ 2020-06-10 13:17:46 | 作者: admin ]
可以获取的信息包括:文章html富文本,无图html文本,以及文章的基本信息:标题、作者、封面图片、公众号等信息。
使用方式:
$crawler = new WxCrawler();
$content = $crawler->crawByUrl($url);
content数组结构为:
```
[
[
'date' => '',//发布日期
'title'=> '',//标题
'digest'=> '',//描述
'content_url'=> '',//文章链接
'cover'=> '',//文章封面链接
'wechatname'=> '',//微信公众号名称
],
'content_html' => '',
'content_text' => '',
...
阅读全文…
使用方式:
$crawler = new WxCrawler();
$content = $crawler->crawByUrl($url);
content数组结构为:
```
[
[
'date' => '',//发布日期
'title'=> '',//标题
'digest'=> '',//描述
'content_url'=> '',//文章链接
'cover'=> '',//文章封面链接
'wechatname'=> '',//微信公众号名称
],
'content_html' => '',
'content_text' => '',
...
阅读全文…
正则批量替换函数preg_replace_callback 在php5.2 php5.3中的类中使用问题相关说明
[ 2020-06-09 21:54:10 | 作者: admin ]
p.s. 真的挺奇怪,这么常用的函数,关于类中使用网上居然很难找到有用相关资料,难道大伙都避免使用preg_replace_callback吗。有用的说明请看参考1.
下面举例说明,其中 next_year 为回调函数
php5.2和php5.3的类中都可以使用的标准方法:
阅读全文…
下面举例说明,其中 next_year 为回调函数
function next_year($matches) {
// 通常:$matches[0] 是完整的匹配项,$matches[1] 是第一个括号中的子模式的匹配项, 以此类推
return $matches[1].($matches[2]+1);
}
// 通常:$matches[0] 是完整的匹配项,$matches[1] 是第一个括号中的子模式的匹配项, 以此类推
return $matches[1].($matches[2]+1);
}
php5.2和php5.3的类中都可以使用的标准方法:
preg_replace_callback(”|(d{2}/d{2}/)(d{4})|”,array( &$this, ‘next_year’), $str);
...阅读全文…
Apache服务器.htAccess rewrite伪静态时匹配url里的中文或http网址
[ 2020-06-09 13:44:04 | 作者: admin ]
p.s. 涉及伪静态参数中有网址或者中文的,需要进行2次urlencode,因为apache伪静态前会自动urldecode一次
配置Apache的伪静态,涉及到中文正则不能匹配,
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
也试了,也不能匹配。
尝试匹配所有字母数字加上% ([a-zA-Z0-9_%]+)
也没有成功,查到Apache执行url会自动进行一次urldecode,传的值会还原成中文的,也不能匹配。
后来想到,把值进行两次 urlencode ,取的时候再进行两次 urldecode 用([a-zA-Z0-9_%]+)
就可以匹配了。
配置Apache的伪静态,涉及到中文正则不能匹配,
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
也试了,也不能匹配。
尝试匹配所有字母数字加上% ([a-zA-Z0-9_%]+)
也没有成功,查到Apache执行url会自动进行一次urldecode,传的值会还原成中文的,也不能匹配。
后来想到,把值进行两次 urlencode ,取的时候再进行两次 urldecode 用([a-zA-Z0-9_%]+)
就可以匹配了。
win2003下apache2.2 close_wait 过多导致无法响应的问题
[ 2020-06-04 13:08:06 | 作者: admin ]
p.s. win2003下fastcgi方式安装apache后也遇到些问题,做个记录。一般情况下可以依据apache和php的错误日志来做一些调整,看看修改的结果。
1、连接状态中 close_wait 太多的问题,apache服务器无响应
解决办法:
a、windows网卡防火墙的设置
windows防火墙中把80,443,apache放入例外,另外防火墙高级中选中http和https。
b、修改apache配置文件httpd.conf,加入下面语句
2、并发连接数太多,导致服务器无响应
...
阅读全文…
1、连接状态中 close_wait 太多的问题,apache服务器无响应
解决办法:
a、windows网卡防火墙的设置
windows防火墙中把80,443,apache放入例外,另外防火墙高级中选中http和https。
b、修改apache配置文件httpd.conf,加入下面语句
EnableMMAP off
EnableSendfile off
AcceptFilter http none
AcceptFilter https none
Win32DisableAcceptEx
EnableSendfile off
AcceptFilter http none
AcceptFilter https none
Win32DisableAcceptEx
2、并发连接数太多,导致服务器无响应
...
阅读全文…
PHP中Header使用的HTTP协议及常用方法小结
[ 2020-06-04 09:42:29 | 作者: admin ]
本文实例总结了PHP中Header使用的HTTP协议及常用方法。分享给大家供大家参考。具体方法如下:
阅读全文…
<?PHP
function https($num) {
$http = array (
100 => "HTTP/1.1 100 Continue",
101 => "HTTP/1.1 101 Switching Protocols",
200 => "HTTP/1.1 200 OK",
201 => "HTTP/1.1 201 Created",
202 => "HTTP/1.1 202 Accepted",
203 => "HTTP/1.1 203 Non-Authoritative Information",
204 => "HTTP/1.1 204 No Content",
205 => "HTTP/1.1 205 Reset Content",
...function https($num) {
$http = array (
100 => "HTTP/1.1 100 Continue",
101 => "HTTP/1.1 101 Switching Protocols",
200 => "HTTP/1.1 200 OK",
201 => "HTTP/1.1 201 Created",
202 => "HTTP/1.1 202 Accepted",
203 => "HTTP/1.1 203 Non-Authoritative Information",
204 => "HTTP/1.1 204 No Content",
205 => "HTTP/1.1 205 Reset Content",
阅读全文…







