冉
sudo apt-get update
sudo apt-get upgrade
一切都很好。重新启动。Web 服务器已关闭。IP 未响应端口 80 上的请求
sudo apachectl start 说:
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
这是真的,它被 apache2 所使用:
tcp6 0 0 :::80 :::* LISTEN 1124/apache2
所以我尝试了
sudo apachectl stop
httpd (no pid file) not running
嗯,这很奇怪,它显然正在运行。如果我说:
sudo kill -9 1124
进而
sudo apachectl start
一切都很好。
因此,当启动触发 apache 启动时,它会进入挂起状态,即它在端口 80 上监听,但运行不够充分,无法使 apachectl 命令工作或响应页面请求。但如果我将其终止,然后手动启动它,一切就都好了。然而,再次重启后,这种情况又会出现。
答案1
启动后立即
ps aux|grep apache
表明
/usr/share/apache2/ask-for-passphrase localhost:443 RSA
正在运行,这让我意识到到底发生了什么。
其中一个站点包含带密码的 SSL 证书。因此,当 Apache 尝试在系统启动时启动时,如果没有人手动输入密码,它就无法继续。
因此,您有两个选择来解决这个问题:
添加SSLPassPhrase对话框指令到您的配置。
删除你的密码(安全性较低)