nginx启动的时候提示端口被占用怎么解决

nginx启动的时候提示端口被占用怎么解决

问题:nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)

nginx: [emerg] still could not bind()

1.第一种方法:查看了一下端口占用情况,并且尝试杀了进程

在端口打命令:netstat -ntpl 会显示如下情况:

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN -

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN -

tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN -

tcp6 0 0 ::1:631 :::* LISTEN

然后在终端打:killall -9 nginx

以上是为了杀掉nginx的重复进程(然而并没有决绝寡人的问题)

2.第二种解决方案是编辑nginx的配置文件

zhouchang@zhouchang-CW65S:~$ sudo gedit /etc/nginx/sites-available/default

只需要将下面这段:

listen 80;

listen [::]:80 default_server;

改为:

listen 80;

listen [::]:80 ipv6only=on default_server;

就行了

3.

(1)先查看80端口被什么占用了

fuser -n tcp 80

比如:root@zhouchang-CW65S:/home/zhouchang# fuser -n tcp 80

会出现类似:80/tcp: 16829

(2)将占用端口杀掉

kill -9 1116

这样再次启动sudo /etc/init.d/nginx start就行了

更多Nginx相关技术文章,请访问Nginx教程栏目进行学习!

以上就是nginx启动的时候提示端口被占用怎么解决的详细内容,更多请关注其它相关文章!