5463浏览量

Apache服务器间歇性假死报错重启后正常的故障解决思路

来源: 时间:2014-01-04

windows环境下的可能的原因分析及解决方法:


一:pf只涨不降,直到使用极限,最终导致内存泄漏。

(内存泄漏也称作“存储渗漏”,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。(其实说白了就是该内存空间使用完毕之后未回收)即所谓内存泄漏。


解决思路:

方法A:编辑httpd.conf
加入

ThreadsPerChild 1000
MaxRequestsPerChild 10000
Win32DisableAcceptEx

方法B:

先取消httpd.conf文件中“# Include conf/extra/httpd-mpm.conf”行的注释;(这是为了能够启动httpd.conf文件时引用httpd-mpm.conf文件的配置。)

然后修改httpd-mpm.conf文件中以下部分的值产生作用,开始推荐1000、10000。如上显示


二:端口暂用冲突导致


解决思路:

尝试在httpd.conf配置文件查找 Lsiten 80,改成别的端口,可以改特殊一点,肯定不会用到的;


三:SSLSessionCache 错误


解决思路:

打开日志: C:webserverApache24logserror.log,可以看到很多错误,其中有这样一条:

1 [Fri Nov 16 15:53:22.390625 2012] [ssl:warn] [pid 7344:tid 1720] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
貌似说 SSLSessionCache配置有点问题,于是乎检查下
1 C:webserverApache24bin>httpd.exe -t
2 AH00526: Syntax error on line 76 of C:/webserver/Apache24/conf/extra/httpd-ssl.conf:
3 SSLSessionCache: 'shmcb' session cache not supported (known names: ). Maybe you need to load the appropriate socache module (mod_socache_shmcb?).
看出来了,本指令需要shmcb支持(俺也不清楚是个啥,总之是要支持就对了),于是,翻开httpd.conf,找到如下一行
1 LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
把前面的#去,然后看看语法检查情况:
1 C:webserverApache24bin>httpd.exe -t
2 Syntax OK


四:zend关联错误


解决思路:

zend 关了,具体做法是,打开php.ini,把以下两行注释掉,问题终于解决.....  [zend]zend_extension="D:phpextZendOptimizer.dll" 这样APACHE终于可以运行正常了。

下一篇 MySQL 性能优化

上一篇: PHP中的

联系我们

一次需求提交或许正是成就一个出色产品的开始。
欢迎填写表格或发送合作邮件至: qczsky@126.com

大理青橙科技

电话:13988578755 13988578755

邮箱:qczsky@126.com

地址:大理市下关龙都春天10层

如果您无法识别验证码,请点图片更换