【问题标题】:How to stop nginx? It keep killing one process and opening a new one with a different pid如何停止nginx?它不断杀死一个进程并用不同的pid打开一个新进程
【发布时间】:2024-05-01 09:40:02
【问题描述】:

我通过 ubuntu 包管理器安装了 nginx。我尝试运行sudo nginx 并得到 ​​p>

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

好的。运行

sudo netstat -plant | grep 8
tcp     0    0 0.0.0.0:80    0.0.0.0:*     LISTEN    3593/nginx -g daemo
tcp6    0    0 :::80         :::*          LISTEN    3594/nginx -g daemo

看来 nginx 仍在运行。

sudo nginx -s stop

我尝试停止它,然后重新检查。

sudo netstat -plant | grep 8

tcp     0    0 0.0.0.0:80    0.0.0.0:*     LISTEN    3736/nginx -g daemo
tcp6    0    0 :::80         :::*          LISTEN    3736/nginx -g daemo

所以基本上它只是改变了 pid 号。每次它都这样做而不是杀死它。我想它会终止该过程并打开一个新过程。

我怎样才能真正阻止它?

【问题讨论】:

    标签: linux ubuntu nginx systemd


    【解决方案1】:

    我不得不使用服务守护进程。所以service nginx stop 而不是nginx -s stop

    显然服务守护进程是控制 nginx 的那个,当你使用 -s 标志时你只是在调用它。在这种情况下我需要直接访问它

    【讨论】:

    • 没有“服务守护进程”之类的东西。service 是一个控制你的initsystem 在这种情况下System V 的命令。