我尝试在ubuntu 16.04上重启apache服务,但我不能,因为端口' 80'由nginx听取。 但是当我试图阻止nginx时,找不到该服务。
netstat -ltnp | grep ':80'
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 6069/nginx
systemctl status nginx
● nginx.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
service nginx stop
Failed to stop nginx.service: Unit nginx.service not loaded.
那么我怎样才能停止nginx以重启apache?
感谢您的帮助
答案 0 :(得分:0)
alex@openresty:~$ ps aux | grep nginx
root 2668 0.0 0.0 41040 928 ? Ss 12:33 0:00 nginx: master process /usr/local/openresty/bin/openresty -p /usr/local/openresty/nginx/
nobody 2669 0.0 0.0 41040 3316 ? S 12:33 0:00 nginx: worker process
将显示使用命令行参数运行nginx的完整路径。以下是我的PC示例(我使用Openresty捆绑,因此您的路径可能会有所不同)。
现在看一下nginx主进程命令行参数。如果存在-p,则应使用完全相同的方法来停止nginx。对于我的情况,它应该是:
/usr/local/openresty/bin/openresty -p /usr/local/openresty/nginx/ -s stop
如果错过-p,您可能只是
/usr/local/openresty/bin/openresty -s stop
它会停止nginx,但有可能在你的PC上nginx被配置为非标准服务运行,例如手写的systemd单元。 所以在每次重启时你都会再次运行nginx。