Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1349859
  • 博文数量: 632
  • 博客积分: 2778
  • 博客等级: 大尉
  • 技术积分: 3387
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-31 09:09
个人简介

123

文章分类

全部博文(632)

文章存档

2014年(36)

2013年(33)

2012年(563)

分类: LINUX

2012-11-13 08:15:03


(98)Address already in use: make_sock: could not bind to address 80 [resolved]


Description:

hi there, was wondering if you could help me with this error i am getting. i was trying to restart my apache server on my linux machine when i got this error i have never seen before, can anyone tell me what this error means? 
 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

# /etc/init.d/httpd restart

Stopping httpd:                                            [  OK  ]

Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:80

(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

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Cause:
This problem is caused by another service listening to TCP/IP port 80.

Solution:
1.  $ sudo fuser -k -n tcp 80
      $ sudo /etc/init.d/httpd  start

    *查看那些程序使用tcp的80端口: 

     $fuser -n tcp 80 

     或$fuser -v -n tcp 80 

     或$fuser -v 80/tcp 

这里,后两种方式显示的信息比较全,因为有了-v选项。 

    
2.  Change the listen port in the httpd config file to 81, by doing this we want to see which service is using port 80.
     just do the following command as root :
#netstat -tlp
after running the command.
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1546/sshd 
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1429/cupsd 
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 1592/postmaster 
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2360/sendmail: acce 
tcp 0 0 0.0.0.0:8554 0.0.0.0:* LISTEN 3207/gnome-dvb-daem 
tcp 0 0 0.0.0.0:54858 0.0.0.0:* LISTEN 1369/rpc.statd 
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1310/rpcbind 
tcp 0 0 :::59092 :::* LISTEN 1369/rpc.statd 
tcp 0 0 :::22 :::* LISTEN 1546/sshd 
tcp 0 0 ::1:631 :::* LISTEN 1429/cupsd 
tcp 0 0 :::443 :::* LISTEN 2593/httpd 
tcp 0 0 :::6881 :::* LISTEN 2757/ktorrent 
tcp 0 0 :::111 :::* LISTEN 1310/rpcbind 
tcp 0 0 :::80 :::* LISTEN 2593/httpd 
tcp 0 0 :::81 :::* LISTEN 2593/httpd 

now we know that port 80 is utilised by another service, so locate and change system-config-httpd.conf: system-config-httpd.conf system-config-httpd.conf. all of this, restart httpd:
/etc/init.d/httpd start

3.  Third solution is to change binging address in your httpd.conf  like this: 
Listen 127.0.0.1:80 ( that means:  instead of  Listen 0.0.0.0:80)

 



阅读(625) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~