Apache日志文件每日自动切割的配置方法

打开Apache的httpd.conf文件,分别找到:

错误日志
ErrorLog logs/error_log
修改为
ErrorLog “| /usr/local/apache/bin/rotatelogs /usr/local/apache/logs/error_log_%Y%m%d 86400 480”

访问日志
CustomLog logs/access_log common
修改为
CustomLog “| /usr/local/apache/bin/rotatelogs /usr/local/apache/logs/access_log_%Y%m%d 86400 480” common

解决FCKeditor在IE9下弹出层兼容问题

在IE9下,FCKeditor的弹出浮动层会出现兼容bug,下面提供一个解决方法:

打开下面这个文件
fckeditor/editor/js/fckeditorcode_ie.js

找到第 38行的这个方法:FCKTools.RegisterDollarFunction

将原来的
FCKTools.RegisterDollarFunction=function(A){A.$=A.document.getElementById;};

修改方法为:
FCKTools.RegisterDollarFunction=function(A){A.$=function(v){return A.document.getElementById(v);}};

定时处理MySQL超时Locked进程的Shell脚本

最近一段时间,我刚刚进入一家新公司,并接手了这里的一个站点,由于这个站点的架构设计不太合理,导致MySQL的压力始终很大,经常出现超时的Locked进程,于是编写了一段Linux的Shell脚本来定时kill掉这些进程。

脚本如下:

#!/bin/bash
mysql_pwd="xxxxxx" #mysql的root密码
mysql_exec="/usr/local/mysql/bin/mysql"
tmp_dir="/tmp"
file_sh="$tmp_dir/mysql_kill_locked.sh"
file_tmp="$tmp_dir/mysql_kill_locked.tmp"
file_log="$tmp_dir/mysql_kill_locked.log" #日志
$mysql_exec -uroot -p$mysql_pwd -e "show processlist" | grep -i "Locked" > $file_tmp
cat $file_tmp >> $file_log
for line in `cat $file_tmp | awk '{print $1}'`
do
echo "$mysql_exec -uroot -p$mysql_pwd -e \"kill $line\"" >> $file_sh
done
chmod +x $file_sh
sh $file_sh #执行临时脚本
> $file_sh #清空临时脚本

最后,将这段脚本加入到crontab,定时执行即可。

阳光部落原创,更多内容请访问 http://www.sunbloger.com/

Nginx手册:Gzip压缩模块详解

Nginx中的Gzip模块,支持在线实时压缩输出数据流。有利于减少访问网站过程中传输的数据量,从而减少带宽资源的占用率。

使用范例

gzip on;
gzip_min_length 1000;
gzip_proxied expired no-cache no-store private auth;
gzip_types text/plain application/xml;

指令详解:

阅读更多

Nginx的rewrite规则基础知识

Nginx的rewrite规则与Apache有一些区别,特地找来一些资料,学习一下Nginx的rewrite规则。

正则表达式匹配,其中:
~ 为区分大小写匹配
~* 为不区分大小写匹配
!~ 和 !~* 分别为区分大小写不匹配及不区分大小写不匹配

文件及目录匹配,其中:
-f 和 !-f 用来判断是否存在文件
-d 和 !-d 用来判断是否存在目录
-e 和 !-e 用来判断是否存在文件或目录
-x 和 !-x 用来判断文件是否可执行

阅读更多

WordPress多站点模式 在Nginx下的rewrite配置方法

最近在把很多应用从Apache转入Nginx下,遇到最棘手的问题莫过于两个平台下rewrite规则的重新调整,下面就拿WordPress为例,和大家分享一下WordPress在多站点模式下,如何配置Nginx中的rewrite规则。

我们在开启WordPress(版本:3.2.1)多站点模式的过程中,会提示我们将一段rewrite写入.htaccess文件中,如下:

阅读更多

MySQL数据库的Order By语句优化

一、建议使用一个索引来满足Order By子句。

在条件允许的情况下,笔者建议最好使用一个索引来满足 Order By子句。如此的话,就可以避免额外的排序工作。这里笔者需要强调的一点是及时Order By子句不确切匹配索引,但是只要Where子句中所有未使用的索引部分和所有额外的 Order by子句中的列为常数,此时就可以使用索引。具体的来说,推荐如下的查询语句。

阅读更多