Pour moi, je lance "killall nginx" et je le démarre par "sbin/nginx", quelqu'un a un meilleur script de redémarrage?
BTW: j'installe nginx depuis la source, je ne trouve pas la commande 'service nginx' ou /etc/init.d/nginx
Le package nginx fournit un script /etc/init.d/nginx qui fournit la fonctionnalité habituelle start | stop | restart | reload ....
/etc/init.d/nginx restart
redémarrera nginx
comme le fera
service nginx restart
Éditer
Ici est un lien vers un script que vous pouvez utiliser comme /etc/init.d/nginx.
http://wiki.nginx.org/CommandLine
à l'intérieur des liens, il y a des commandes pour démarrer et arrêter le serveur nginx
pour démarrer nginx:
/usr/bin/nginx
pour arrêter nginx:
/usr/bin/nginx -s stop
/usr/bin
dépend de l'endroit où vous installez votre nginx
Pour une raison quelconque, sur le système embarqué sur lequel je travaille, il y a:
systemctl restart nginx
Après avoir édité les fichiers de configuration, je le redémarre comme ceci sur OpenBSD:
kill -HUP `cat /var/run/nginx.pid` && date && sleep 1 && \
tail -2 /var/www/logs/error.log ; date
Le signal HUP
lui fait relire ses fichiers de configuration, le tail
indique si des erreurs ont été rencontrées, le date
met ces erreurs dans le contexte (une erreur s'est produite uniquement si l'heure de date
correspond à l'heure du journal), et sleep 1
garantit qu'il n'y a pas de conditions de concurrence entre la lecture du journal avant que nginx n'ait eu le temps d'y écrire.
Voici à quoi cela ressemble:
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#
Le fait que l'heure du journal ne soit pas comprise entre les heures imprimées par date
indique qu'aucune erreur n'a été rencontrée cette fois-ci et que la nouvelle configuration est bonne.
Vous pouvez trouver des scripts init dans le wiki NginX: http://wiki.nginx.org/Configuration#Init_Scripts
La fonction de redémarrage exécute la commande suivante:
BASEDIR=
$BASEDIR/sbin/nginx -s stop
$BASEDIR/sbin/nginx $BASEDIR/conf/nginx.conf
Si vous avez installé nginx dans/opt/nginx, remplacez BASEDIR=
par BASEDIR=/opt/nginx
.
Habituellement, les packages installés à partir des sources n'installent pas de script de démarrage à /etc/init.d/
. Vous avez deux options.
1- Vous pouvez rechercher un script dans le répertoire du code source ou sur le site Web et le personnaliser si nécessaire.
2- Vous pouvez copier un script de démarrage pour un autre package à partir de votre système et le personnaliser.