我的Apache2挂了。我无法得到任何回应。
我试图运行wget localhost
它就像这样挂起:
--2012-03-12 06:36:40-- http://localhost/
Resolving localhost... 127.0.0.1
Connecting to localhost|127.0.0.1|:80... connected.
HTTP request sent, awaiting response...
如何获取更多调试信息?
答案 0 :(得分:3)
使用netstat -nt
查看从127.0.0.1到端口80的连接。
您可以使用fuser -n tcp 80,127.0.0.1,<port-number>
查找Apache进程的PID,该进程具有来自给定的127.0.0.1的端口80 TCP连接。
然后在该进程上执行strace -p <pid>
以查看它在系统调用级别执行的操作。
如果你在单进程模式下重启Apache,你可以取出pid查找步骤(假设挂起仍然重现!)如果是这种情况我会在strace
下运行该Apache并捕获跟踪。
基于此,我将决定下一步该做什么。它是挂在系统调用中,而不是挂在系统调用中,...哪个系统调用。最后的度假胜地将获得调试版本并gdb
。
Apache调试指南:http://httpd.apache.org/dev/debugging.html
答案 1 :(得分:2)
尝试tail -f /var/log/apache/error_log
。
您error_log
的路径可能会有所不同。要搜索它,请尝试find / -name error_log
。如果您没有以root
身份登录,那么您可能会看到一堆“权限被拒绝”。在这种情况下,您可以使用find / -name error_log 2>/dev/null
隐藏错误消息,或尝试使用find /var/log/ -name error_log
猜测位置。