【问题标题】:Add nginx as a ubuntu service stop and reload doesn't work添加 nginx 作为 ubuntu 服务停止和重新加载不起作用
【发布时间】:2012-06-11 22:27:55
【问题描述】:

我的nginx是源码编译的,只给--conf-path=/etc/nginx/nginx.conf的标志

一切正常,我试图使用this service init.d 脚本将 nginx 作为系统服务,

这是我只做了 2 处小改动的脚本:

1. DAEMON=/usr/local/nginx/sbin/nginx

2.NGINX_CONF_FILE="/etc/nginx/nginx.conf"

然后 sudo 服务 nginx 启动

有效

yozloy@SNDA-172-17-10-158:/usr/local$ sudo service nginx start
 * Starting Nginx Server...
   ...done

.

但是服务 nginx 停止并且服务 nginx 重新加载

给我一​​个错误

yozloy@SNDA-172-17-10-158:/usr/local$ sudo service nginx stop
 * Stopping Nginx Server...
   ...fail!

并且错误没有出现在 log/error.log 文件中

【问题讨论】:

    标签: nginx init.d


    【解决方案1】:

    我在 Ubuntu 12.04 上使用 Nginx 时遇到过类似的问题,nginx 从源代码编译,而 init 脚本从与您类似的源代码中获取。

    服务在初始化文件中启动良好,但停止或重新启动没有。 最后,原因是 nginx.conf 和 init 脚本中 pid 文件的路径不同。 确保它们都指向同一个位置。

    【讨论】:

    • 感谢您的回答。我已经等了很长时间了。您能否解释更多细节以使它们指向同一位置?
    • @yozloy 在您的 nginx.conf 文件中,您会找到“pid /tmp/nginx.pid;”行您应该使用该目录并更改初始化脚本中每个操作的 pid 文件的初始化脚本位置。
    • 间歇性停止/重启失败的情况(经常会删除PID文件,但包括master在内的进程不会死掉),见this answer
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-29
    • 2012-05-31
    • 2016-02-10
    • 1970-01-01
    相关资源
    最近更新 更多