我今天打开电脑,发现 Apache 无法运行。这很奇怪,因为它在过去 6 个月里一直运行正常,没有出现问题。
我唯一可能引起问题的事情就是卸载了一堆 gem。不过这应该不是问题,因为 apache 不依赖 gem。
我决定尝试一下 nginx,看看它是否可以工作并且是否存在完全相同的问题。
症状如下:
- 我去http://本地主机并获取浏览器默认的 404 页面(不由 apache/nginx 呈现)
- 没有发现任何错误(我检查了所有日志)
- Apache 正在运行(也尝试使用 Nginx)
我该如何调试才能找到问题的根源?我想不出为什么会发生这种情况。
我尝试修复权限以防出现此问题,但显然不是。前几天一切都正常,apache 配置没有任何变化。
更新:
以下是输出telnet localhost 80
$ telnet localhost 80
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying fe80::1...
telnet: connect to address fe80::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host
答案1
http://hintsforums.macworld.com/showthread.php?t=83942
sudo apachectl -t
reviled apache 无法找到 Passenger 宝石,这是有道理的,因为我正在弄乱rvm ree@global
gemset 中的宝石。
解决方案是重新安装乘客宝石:
$ rvm ree@global
$ gem install passenger
并重新启动 apache。