对我来说,我运行“killall nginx”并启动它“sbin / nginx”,任何人都有一个更好的重启脚本?
BTW:我从源安装nginx,我找不到'service nginx'命令或/etc/init.d/nginx
nginx包提供了一个/etc/init.d/nginx脚本,它提供了通常的start | stop | restart | reload …function。
/etc/init.d/nginx restart
将重新启动nginx
一如既往
service nginx restart
编辑
这是一个可以用作/etc/init.d/nginx的脚本的链接。
http://wiki.nginx.org/CommandLine
里面的链接有一些命令用于启动和停止nginx服务器
用于启动nginx:
/usr/bin/nginx
停止nginx:
/usr/bin/nginx -s stop
/usr/bin
取决于你安装你的nginx的位置
编辑configuration文件之后,我在OpenBSD上像这样重新启动它:
kill -HUP `cat /var/run/nginx.pid` && date && sleep 1 && \ tail -2 /var/www/logs/error.log ; date
HUP
信号使其重新读取其configuration文件, tail
显示是否遇到任何错误, date
将这些错误放入上下文中(仅当从date
的时间与日志中的时间匹配时才发生错误),以及sleep 1
确保在nginx已经有时间写入日志之前从日志中读取数据之间没有竞争条件。
这是它的样子:
Cns# kill -HUP `cat /var/run/nginx.pid` && date && sleep 1 && tail -2 /var/www/logs/error.log ; date Tue Feb 12 10:58:52 PST 2013 2013/02/12 10:03:35 [emerg] 8120#0: directive "set" is not terminated by ";" in /etc/nginx/conf.d/etc.ngx.grok/bxr.su.conf:226 2013/02/12 10:04:19 [emerg] 8120#0: invalid return code "$uri_def" in /etc/nginx/conf.d/etc.ngx.grok/bxr.su.conf:231 Tue Feb 12 10:58:53 PST 2013 Cns#
从日志开始的时间不是按date
打印的时间这一事实表明这次没有遇到任何错误,新的configuration是一个很好的configuration。
您可以在Nginx Wiki中findinit脚本: http ://wiki.nginx.org/Configuration#Init_Scripts
重启function运行以下命令:
BASEDIR= $BASEDIR/sbin/nginx -s stop $BASEDIR/sbin/nginx $BASEDIR/conf/nginx.conf
如果您已将nginx安装在/ opt / nginx中,请将BASEDIR=
BASEDIR=/opt/nginx
replace。
通常,从源代码安装的软件包不会在/etc/init.d/
安装启动脚本。 你有两个select。
1-您可以在源代码目录或网站上查找脚本,并根据需要进行自定义。
2-您可以从系统中复制另一个软件包的启动脚本并对其进行自定义。