60 votes

Nginx Numéro PID invalide

J'ai lancé un nginx -s stop et après cela j'ai eu cette erreur en essayant de le recharger.

[erreur] : numéro de PID invalide "" dans "/var/run/nginx.pid".

Le fichier /var/run/nginx/pid est vide pour le moment.

Que dois-je faire pour le réparer ?

71voto

kolbyjack Points 4721

Nginx -s reload est uniquement utilisé pour indiquer à un processus nginx en cours d'exécution de recharger sa configuration. Après un arrêt, vous n'avez pas de processus nginx en cours d'exécution à qui envoyer un signal. Il suffit de lancer nginx (éventuellement avec un -c /path/to/config/file)

24 votes

Sur une installation stock de des distributions actuelles, vous voudrez probablement utiliser le start script : sudo service nginx start

22voto

Adrián Deccico Points 885

Dans mon cas, j'ai résolu le problème en démarrant le service.

sudo /etc/init.d/nginx start

La commande ci-dessus démarrera le service sous Debian/Ubuntu. Elle émettra une erreur s'il y a un problème (comme Apache écoutant sur le même port).

Après cela, nginx -s reload fonctionnera comme un charme.

8voto

blogme4u Points 199

Dans la dernière version (1.2.0) que j'ai téléchargée, il n'y a pas d'option "-s start". nginx : invalid option : "-s start"

Vous pouvez démarrer nginx en

sudo /etc/nginx/sbin/nginx

Le serveur sera démarré et il n'y aura pas d'erreurs de type "Invalid pid number".

8voto

b3nky Points 91

Pour éviter les temps d'arrêt dus au redémarrage de nginx,

ps aux | grep nginx 
PID of nginx master process

echo PID > /var/run/nginx.pid
nginx -s reload

0 votes

En cas which pgrep n'est pas vide, la version la plus simple est pgrep 'nginx: master process' > /var/run/nginx.pid et ensuite lancer le rechargement.

6voto

ramonamis Points 196

Dans mon cas, nginx a été arrêté (crashé je suppose). J'ai résolu le problème par :

service nginx status
nginx stop/waiting

service nginx start
nginx start/running, process 3535

Ensuite, nginx -s reload a fonctionné comme un charme.

J'utilise nginx/1.8.0 sur trusty.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X