今天早上我来了,我们的web服务器没有运行,所以我关闭了apache,并试图再次启动它。在这台服务器上至少有2-3周没有任何东西被触及,上次我重新启动它的时候,httpd.conf已经在工作了。我尝试过重新启动服务器,但没有结果。下面是我在尝试启动apache2时得到的消息。
username:~$ sudo /etc/init.d/apache2 start
* Starting web server apache2
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
...fail!发布于 2010-11-29 20:07:56
已经有一个进程侦听端口80。
您可以通过运行以下命令来标识它:
sudo netstat -anp | grep "0.0.0.0:80"最右边的列将给出违规进程(Es)的PID。
如果您确信您的Apache实例是这个系统上唯一应该绑定到端口80的东西,并且运行init 'stop‘脚本没有任何效果,那么您可以尝试kill INSERTPIDHERE它们,然后尝试再次启动Apache。
发布于 2010-11-29 20:11:06
您最好的选择是,早期的HTTPD服务器的一部分或全部仍在运行,无论是活动的还是挂起的。我建议你:
sudo /etc/init.d/apache2 stop && ps -leaf | egrep -i "(http|apache)"任何由grep打印出来的信息都可能是嫌疑人。如果未打印任何内容,则应检查侦听或以其他方式使用端口80的其他进程。
发布于 2010-11-29 23:01:41
虽然如果重新启动服务器没有修复它,但挂起的apache进程不太可能占用端口80。最后一部分:
Unable to open logs
...fail!我认为它们可能是驱动器上的很少磁盘空间,或者至少在日志文件位置上。您可以通过键入df -h来检查可用的可用空间。如果文件已满,则可能希望尝试删除一些日志文件或其他不必要的文件。
https://serverfault.com/questions/207106
复制相似问题