<dfn id='VyoMDQmH'></dfn>

        <noscript id='VyoMDQmH'></noscript>

      1. 频道栏目
        首页 > 系统 > 虚拟机 > 正文

        虚拟机VM中的Linux启动Nginx时出现80端口被占用的问题解决方法

        2019-02-20 11:59:14         来源:beast_l的博客  
        收藏   我要投稿

        我用的虚拟机是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服务就一直报错。

        上一篇:虚拟机(linux)下安装nginx的步骤教程
        下一篇:系统运维之安装虚拟机VMware、操作系统CentOS7、Xshell6、Xftp6 步骤解析
        相关文章
        图文推荐

        关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

        版权所有: 第一门户--致力于做实用的IT技术学习网站