我在我的 Ubuntu 上设置了 Nginx 和 OpenRusty,有一件事让我感到困惑,即使在我退出 OpenRusty 并停止 Nginx 之后,我仍然可以观察到 nginx 正在运行,似乎这个过程甚至无法被杀死,我的问题是谁启动了这个 nginx 以及为什么这个 nginx 守护进程一直在运行?
ps -aux | grep nginx
root 3779 0.0 0.0 10776 6180 ? Ss 06:57 0:00 **nginx: master process nginx -g daemon off;**
systemd+ 4587 0.0 0.0 11172 2756 ? S 06:57 0:00 nginx: worker process
jia 17315 0.0 0.0 16184 1068 pts/0 S+ 07:08 0:00 grep --color=auto nginx
我尝试使用 systemctl 来停止它,但 nginx 似乎仍在运行
sudo systemctl stop nginx.service
sudo systemctl status nginx.service
● nginx.service - The NGINX HTTP and reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; disabled; vendor preset: enabled)
Active: inactive (dead)
sudo ps -aux | grep nginx root 3779 0.0 0.0 10776 6180 ? Ss 06:57 0:00 nginx: master process nginx -g daemon off;
systemd+ 4587 0.0 0.0 11172 2756 ? S 06:57 0:00 nginx: worker process
答案1
OpenResty(假设你指的是 OpenR埃sty 而不是 OpenR你sty!是 nginx 的 http 守护进程的工具集和高级配置。因此,如果 openresty 正在运行,它将始终包含正在运行的 nginx。
所以对我来说你的ps -aux | grep nginx
结果是:
...
root 8402 0.0 0.0 49984 14580 ? SNs Jul25 0:00 nginx: master process /usr/local/openresty/nginx/sbin/nginx -g daemon on; master_process on;
...
我的配置似乎包含完整路径,但如果您的配置没有,您可以尝试(8402
用您的 nginx 的 pid 替换):
sudo ls -l /proc/8402/exe
就我而言,结果是:
lrwxrwxrwx 1 root root 0 Sep 20 16:46 /proc/8402/exe -> /usr/local/openresty/nginx/sbin/nginx
因此,正在运行的 nginx 二进制文件来自 OpenResty,而不是“其他”nginx。您可能还考虑删除其他 nginx,以免对正确的配置文件感到困惑...