Address already in use: make_sock: could not bind to address [::]:80

**********************************************************
处理办法:
# ps -aux | grep http
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
root     12079 0.0 0.0 61164   720 pts/1    S+   16:06   0:00 grep http
# ps -aux | grep apache
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
apache   10820 0.0 0.0   2044   600 ?        Ss   Jan01   0:04 bash
root     12081 0.0 0.0 61160   716 pts/1    S+   16:06   0:00 grep apache
# kill -9 10820
# /etc/init.d/httpd start
Starting httpd:                                            [ OK ]
# /etc/init.d/httpd restart
Stopping httpd:                                            [ OK ]
Starting httpd:                                            [ OK ]
**********************************************************

httpd/Apache默认占用的是80端口,有时候你使用apache自带的重启脚本会出现

Address already in use: make_sock: could not bind to address [::]:80

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

这会导致你的apache无法启动,你需要查找下你的机器看看是否有哪个线程已经占用了80端口。

1
2
3
4
5
6
7
8
9
10
11
12
netstat -lnp|grep 80
 
#tcp    0   0 0.0.0.0:80    0.0.0.0:*   LISTEN  13957/httpd
 
#查看该进程 (13957是动态的)
ps 13975
 
#结束该进程
kill -9 13975
 
#启动httpd/Apache
service httpd start

apache启动完毕。

REF:

http://www.markdream.com/technologies/server/address-already-in-use-make_sock-could-not-bind-to-address-80.shtml

原文地址:https://www.cnblogs.com/emanlee/p/4470713.html