现象:
httpd服务启动成功,但是客户端无法连接。查看/var/log/httpd/error_log,发现不断抛出“ [notice] child pid XXXXX exit signal Segmentation fault (11) ”这样的错误。
排查:
1. 使用httpd的debug模式:/usr/sibn/httpd -X 直接提示Segmentation fault并退出;
2. 使用strace查看:strace -o /tmp/httpd_error /usr/sibn/httpd 在最后发现有“文件数打开过多”的提示;
3. 查看/proc/sys/fs/file-nr显示:80768 0 65536 打开文件数超过了最大打开文件数65535;
4. 临时修改了打开最大文件数:echo "102400" > /proc/sys/fs/file-max 之后重启httpd服务,问题解决。