导语:一个客户安装的wdcp控制面板,但运行不稳定,经常性的网站就挂了,表现为数据库先挂掉,然后web服务出现500错误。经过排查,叶子认为是httpd-mpm.conf的配置问题。
配置httpd-mpm.con
f
先找到apachectl,查看一下apache工作在什么模式下。
find / -name apachectl /www/wdlinux/httpd-2.4.23/bin/apachectl
执行apachectl -l。
/www/wdlinux/httpd-2.4.23/bin/apachectl -l Compiled in modules: core.c mod_so.c http_core.c prefork.c
可以看到它工作在prefork模式,那么进入httpd.conf,开启httpd-mpm.conf,将Include前面的#号去掉就可以了。
Include conf/extra/httpd-mpm.conf
进入httpd-mpm.conf,配置一下prefork模块。
查找httpd-mpm.conf。
find / -name httpd-mpm.conf /www/wdlinux/httpd-2.4.23/conf/extra/httpd-mpm.conf /www/wdlinux/httpd-2.4.23/conf/original/extra/httpd-mpm.conf
进入httpd-mpm.conf。
vi /www/wdlinux/httpd-2.4.23/conf/extra/httpd-mpm.confServerLimit 1000 StartServers 20 MinSpareServers 20 MaxSpareServers 40 MaxRequestWorkers 1000 MaxConnectionsPerChild 10000
重启apache
service httpd restart
或者切换到/www/wdlinux/httpd-2.4.23/bin/
./apachectl restart
发现刚刚的配置没有起到作用,因为叶子设置了StartServers的值为20,结果重启后还是5。进程使用ps -aux可以看到。
wdcp的特殊性
叶子查询了文档发现wdcp使用了另外的配置文件httpd-wdl.conf,位置在/www/wdlinux/apache/conf/httpd-wdl.conf。
使用vi进入httpd-wdl.conf,修改mpm_prefork_module模块,请根据机器的实际情况修改,然后重启apache。一切ok。
wdcp日志所在位置
apache日志位置
cd /www/wdlinux/apache/logs/
关闭日志
/www/wdlinux/apache/conf/httpd.conf
将这下面代码打上#号
#CustomLog "logs/access_log" common
nginx日志位置
cd /www/wdlinux/nginx/logs/
关闭日志
/www/wdlinux/nginx/conf/nginx.conf
添加以下代码
access_log off;
结束
你学会了吗?