欢迎大家来到IT世界,在知识的湖畔探索吧!
我用的虚拟机是VM,Linux版本是CentOS6.3。在安装完Nginx之后,准备启动Nginx服务。
切到目录:
[root@localhost ~]# cd /usr/local/nginx/sbin
[root@localhost sbin]# ./nginx
结果出现了问题:
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
,Nginx服务使用80端口,看报错信息大概就是80端口已经被占用。
既然80端口已经被占用,那我们就来看看是什么占用了80端口。
[root@localhost ~]# netstat -ntlp|grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1468/nginx
看结果,是Nginx进程占用的。那我们就杀死Nginx进程再启动Nginx服务。
首先查看与Nginx有关的进程。据我观察,前四个是Nginx有关的进程,这四个进程要全部杀死,才能启用Nginx。第四个进程是我们抓取Nginx的进程没有关系。
[root@localhost sbin]# ps -ef |grep nginx
www 2479 1 0 12:46 00:00:00 nginx: worker process
www 2480 1 0 12:46 00:00:00 nginx: worker process
www 2483 1 0 12:46 00:00:00 nginx: worker process
www 2485 1 0 12:46 00:00:00 nginx: worker process
root 2491 2405 0 12:47 pts/0 00:00:00 grep nginx
然后我们执行命令:
[root@localhost sbin]# kill -9 2479
[root@localhost sbin]# kill -9 2480
[root@localhost sbin]# kill -9 2483
[root@localhost sbin]# kill -9 2485
查看杀死Nginx1进程后的结果:
[root@localhost sbin]# ps -ef |grep nginx
root 2495 2405 0 12:48 pts/0 00:00:00 grep nginx
这时候我们再次开启Nginx服务:
[root@localhost sbin]# ./nginx
[root@localhost sbin]#
这时候成功了!!!!!!
这个过程中要注意的是:与Nginx有关的进程要全部杀死!!我之前没有全部杀死,导致一直有Nginx进程存在,启用Nginx服务就一直报错。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/18412.html