나를 위해, "killall nginx"를 실행하고 "sbin / nginx"로 시작합니다. 누가 더 나은 재시작 스크립트가 있습니까?
BTW : 소스에서 nginx를 설치했는데 'service nginx'명령 또는 /etc/init.d/nginx를 찾을 수 없습니다
나를 위해, "killall nginx"를 실행하고 "sbin / nginx"로 시작합니다. 누가 더 나은 재시작 스크립트가 있습니까?
BTW : 소스에서 nginx를 설치했는데 'service nginx'명령 또는 /etc/init.d/nginx를 찾을 수 없습니다
답변:
nginx 패키지는 일반적인 start | stop | restart | reload ... 기능을 제공하는 /etc/init.d/nginx 스크립트를 제공합니다.
/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를 어디에 설치 하느냐에 따라
어떤 이유로 든 임베디드 시스템에서 내가하고있는 일은 다음과 같습니다.
systemctl restart nginx
구성 파일을 편집 한 후 OpenBSD에서 다음과 같이 다시 시작합니다.
kill -HUP `cat /var/run/nginx.pid` && date && sleep 1 && \
tail -2 /var/www/logs/error.log ; date
HUP
신호는 설정 파일의 다시 읽어하게 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
오류가 발생하지 않았으며 새 구성이 적합하다는 것을 나타냅니다.
NginX Wiki에서 init 스크립트를 찾을 수 있습니다 : http://wiki.nginx.org/Configuration#Init_Scripts
재시작 기능은 다음 명령을 실행합니다.
BASEDIR=
$BASEDIR/sbin/nginx -s stop
$BASEDIR/sbin/nginx $BASEDIR/conf/nginx.conf
당신의 nginx / 옵션 / nginx를 설치 한 경우, 교체 BASEDIR=
에 의해 BASEDIR=/opt/nginx
.