Linux Mint 是 Virtual Box 上的客户系统
Windows 8.1 是主机系统
danko@danko-VirtualBox ~ $ sudo /etc/init.d/apache2 restart
[sudo] password for danko:
Restarting web server apache2
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
Apache 错误日志可能有更多信息。[失败] apache2 实例未在 20 秒内启动。请阅读日志文件以发现问题
Apache 错误日志为空
danko@danko-VirtualBox ~ $ netstat -punta | grep LISTEN
(并非所有进程都能被识别,非自有进程的信息将不会显示,您必须以 root 身份才能查看全部内容。)
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN -
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN -
tcp6 0 0 :::139 :::* LISTEN -
tcp6 0 0 :::80 :::* LISTEN -
tcp6 0 0 ::1:631 :::* LISTEN -
tcp6 0 0 :::445 :::* LISTEN
答案1
Apache 无法启动,因为端口 80 已被其他进程使用(输出已证实netstat
)。运行以下命令查看该进程是什么:
sudo lsof -i | grep "http (LISTEN)"
一旦确定了该过程是什么,您就可以(干净地)停止它,然后启动 Apache。
答案2
它可能作为服务安装,并且需要重新启动:
$ sudo 服务 apache2 重启