PHP判断搜索引擎机器人Robot
[ 2010-12-18 14:01:58 | 作者: admin ]
有朋友问到如何使用PHP去判断是否是搜索引擎,其实PHP有个很简单的方式去实现,通过_SERVER这个预定义变量中的_SERVER['HTTP_USER_AGENT']可以取得访问者的属性,具体可以看下Diiscuz!是如何判断搜索引擎的,函数代码如下:
function getrobot() {
if(!defined('IS_ROBOT')) {
kw_spiders = 'Bot|Crawl|Spider|slurp|sohu-search|lycos|robozilla';
kw_browsers = 'MSIE|Netscape|Opera|Konqueror|Mozilla';
if(preg_match("/(kw_browsers)/", _SERVER['HTTP_USER_AGENT'])) {
define('IS_ROBOT', FALSE);
...
阅读全文…
function getrobot() {
if(!defined('IS_ROBOT')) {
kw_spiders = 'Bot|Crawl|Spider|slurp|sohu-search|lycos|robozilla';
kw_browsers = 'MSIE|Netscape|Opera|Konqueror|Mozilla';
if(preg_match("/(kw_browsers)/", _SERVER['HTTP_USER_AGENT'])) {
define('IS_ROBOT', FALSE);
...
阅读全文…
ftp传文件中途中断之后
[ 2010-12-17 10:40:30 | 作者: admin ]
需要先将服务器上的文件删除,然后再重新上传!
sql server中批量替换大于8000的ntext字段内容
[ 2010-12-16 09:40:56 | 作者: admin ]
(1)、varchar和nvarchar类型是支持replace,所以如果你的text/ntext不超过8000/4000可以先转换成前面两种类型再使用replace。
(2)、大于8000的需要用存储过程
调用演示
存储过程ReplaceText
CREATE procedure [dbo].[ReplaceText]
@TargetTable nvarchar(1000), --目标表名...
阅读全文…
update 表名 set text类型字段名= replace ( convert ( varchar ( 8000) , text类型字段名) , '要替换的字符' , '替换成的值' )
(2)、大于8000的需要用存储过程
调用演示
exec replacenew 'info' , 'content','id' ,'sohu.com','52news.com'
存储过程ReplaceText
CREATE procedure [dbo].[ReplaceText]
@TargetTable nvarchar(1000), --目标表名
阅读全文…
Linux计划任务入门详解
[ 2010-12-15 11:13:00 | 作者: admin ]
cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
你也可以将这个服务在系统启动的时候自动启动:
在/etc/rc.d/rc.local这个脚本的末尾加上:
/sbin/service crond start
现在Cron这个服务已经在进程里面了,我们就可以用这个服务了,Cron服务提供以下几种接口供大家使用:
1.直接用crontab命令编辑
...
阅读全文…
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
你也可以将这个服务在系统启动的时候自动启动:
在/etc/rc.d/rc.local这个脚本的末尾加上:
/sbin/service crond start
现在Cron这个服务已经在进程里面了,我们就可以用这个服务了,Cron服务提供以下几种接口供大家使用:
1.直接用crontab命令编辑
...
阅读全文…
Nginx日志切割脚本
[ 2010-12-14 20:07:19 | 作者: admin ]
使用logrotate:
vi /etc/logrotate.d/nginx
/usr/local/nginx/logs/*.access.log error.log{
daily
missingok
#保留365个log
rotate 365
compress
#延后压缩
delaycompress
#无文件不压缩
notifempty
#创建的文件权限设置为644,用户组nobody:root
create 644 nobody root
#多个文件脚本轮换只执行一次
dateext
#在文件末尾添加当前日期
olddir /usr/local/nginx/logs/backlog/
#把备份文件拷贝到老目录,防止再次备份
sharedscripts
prerotate
#rotate之前sleep59秒
sleep 59
endscript
postrotate
...
阅读全文…
vi /etc/logrotate.d/nginx
/usr/local/nginx/logs/*.access.log error.log{
daily
missingok
#保留365个log
rotate 365
compress
#延后压缩
delaycompress
#无文件不压缩
notifempty
#创建的文件权限设置为644,用户组nobody:root
create 644 nobody root
#多个文件脚本轮换只执行一次
dateext
#在文件末尾添加当前日期
olddir /usr/local/nginx/logs/backlog/
#把备份文件拷贝到老目录,防止再次备份
sharedscripts
prerotate
#rotate之前sleep59秒
sleep 59
endscript
postrotate
...
阅读全文…
Dell R710 安装 RedHat AS 5.X X32 X64 网卡故障解决
[ 2010-12-13 21:24:04 | 作者: admin ]
p.s.最新R710网卡驱动
Dell R710 用的操作系统是 RedHat As5.3 X64 会在正常运行中无故断网….
而且并没有规律,择日而断…弄了好久,还以为是机房的问题,最后无奈之下打电话给 Dell 报修。
他们的工程师立马就反应过来,这是 RedHat As5.X 版本中的Broadcom NetXtreme II BCM 5709 驱动 BUG,涉及到 ACPI 电源管理的问题。
所以当网卡在正常工作的时候,会被 ACPI 误以为他闲着,从而把它给关闭掉。
...
阅读全文…
Redhat 5.x 网卡最新驱动:
http://ftp.us.dell.com/network/Bcom_LAN_16.0.0_Linux_Source_A00.tar.gz
Broadcom 网站上对应最新的linux驱动:
http://www.broadcom.com/support/ethernet_nic/netxtremeii.php
http://ftp.us.dell.com/network/Bcom_LAN_16.0.0_Linux_Source_A00.tar.gz
Broadcom 网站上对应最新的linux驱动:
http://www.broadcom.com/support/ethernet_nic/netxtremeii.php
Dell R710 用的操作系统是 RedHat As5.3 X64 会在正常运行中无故断网….
而且并没有规律,择日而断…弄了好久,还以为是机房的问题,最后无奈之下打电话给 Dell 报修。
他们的工程师立马就反应过来,这是 RedHat As5.X 版本中的Broadcom NetXtreme II BCM 5709 驱动 BUG,涉及到 ACPI 电源管理的问题。
所以当网卡在正常工作的时候,会被 ACPI 误以为他闲着,从而把它给关闭掉。
...
阅读全文…
RedHat和CentOS的Broadcom NetXtreme网卡驱动BUG
[ 2010-12-13 21:21:15 | 作者: admin ]
p.s. 最近网卡经常大流量就挂掉,不知道是不是这个原因造成的!!
RedHat As5.X 版本中的Broadcom NetXtreme II BCM 5709网卡驱动有BUG,导致网卡在有负载时候喜欢中断,ifconfig查看会发现:
RX packets:10487593 errors:4756121 dropped:0 overruns:0 frame:4756121
TX packets:10829687 errors:0 dropped:0 overruns:0 carrier:0
重启网卡后恢复正常,一定时间后,故障依然。
解决方法: 升级网卡驱动
先看当前网卡驱动版本:
modinfo bnx2
filename: /lib/modules/2.6.18-194.el5PAE/kernel/drivers/net/bnx2.ko
...
阅读全文…
RedHat As5.X 版本中的Broadcom NetXtreme II BCM 5709网卡驱动有BUG,导致网卡在有负载时候喜欢中断,ifconfig查看会发现:
RX packets:10487593 errors:4756121 dropped:0 overruns:0 frame:4756121
TX packets:10829687 errors:0 dropped:0 overruns:0 carrier:0
重启网卡后恢复正常,一定时间后,故障依然。
解决方法: 升级网卡驱动
先看当前网卡驱动版本:
modinfo bnx2
filename: /lib/modules/2.6.18-194.el5PAE/kernel/drivers/net/bnx2.ko
...
阅读全文…
nginx反向代理简单一例
[ 2010-12-13 09:34:52 | 作者: admin ]
server
{
listen 80;
server_name k; #碰到域名为k的 就交给iis来运行
location / {
proxy_pass http://k:8080/; #我的IIS上面的站点即为http://k:8080
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|html|htm|css)$ { #指定缓存文件类型
expires 7d; #设置浏览器过期时间
阅读全文…