我制作了一个运行一个网站的私有Amazon EC2映像,然后开始安装redmine。 在所有安装完成之后,即将重启Apache我遇到了以下问题(抱歉,您可能需要放大以查看屏幕截图): 
我对发生的事情的理解是,apache2没有运行,但它正在监听端口80.然后我试着:
这给出了相同的混淆,但一致的结论,apache2没有运行,但我相信它是进程18304这是apache2侦听端口80.最终,我不得不杀死进程,并重新启动apache的工作。 有人可以向我解释什么可能导致这个和一个修复?
UPDATE1:
在合成器之后build议使用lsof 。
这与以前不同的过程完全一样。
有时,当你停止apache(或任何其他程序)的脚本不能正确closures该程序,因为它等待的东西(例如IO),但删除pid文件。 所以脚本beleives apache没有运行,因为没有pid文件,但apache运行,或者有时不真正rund但卡在和坐在端口。
在这些情况下,你必须杀死进程,你可以启动程序。 我已经看到了很多这种从apache,slapd,cirus等卡住的进程。有时候会发生。
尝试运行
lsof -n | grep TCP
另外.. apache2控制器并不总是最可靠的,它只是检查一个PID文件,而不是实际的过程。
ps -aef | grep httpd
$ 1表示你仍然有一个httpd运行。
正如海报上面所说,使用
lsof -n | grep TCP
要么
lsof -n | grep "*:www"
另外,在Ubuntu中,它使用进程名称“apache2”,所以你应该检查它
ps -ax |grep apache
而不是grep httpd
跑
ps aux|grep apache
你有看到
/usr/share/apache2/ask-for-passphrase localhost:443 RSA
如果是这样
其中一个站点包含带有密码的SSL证书。 所以当apache尝试在启动时启动时,如果没有人手动input密码,它将无法继续。
所以你有两个select来解决这个问题:
将SSLPassPhraseDialog指令添加到您的configuration。
删除您的密码 (不太安全)