102 votes

Nginx ne parvient pas à se recharger - comment savoir pourquoi ?

Bonjour, mon serveur Nginx fonctionne parfaitement sur le serveur Ubuntu 12.04 depuis un certain temps.

J'ai progressivement ajouté des éléments, et j'ai réussi à optimiser les temps de chargement de ma page Wordpress.

Après avoir fait quelques changements dans mon fichier hosts, j'ai décidé de le faire :

sudo /etc/init.d/nginx reload

Ce à quoi je réponds :

* Reloading nginx configuration nginx                           [fail]

Aucune information supplémentaire ou raisonnement n'est donné. Comment puis-je redémarrer mon serveur de manière à ce qu'il imprime toutes les déclarations d'erreur lors du rechargement afin que je puisse commencer à rechercher l'erreur.

Pour une question bonus :

Pour les administrateurs système de Nginx, lorsque vous avez effectué un tas de changements dans les hôtes et ajouté quelques autres éléments et que soudainement votre serveur nginx ne se recharge pas (par ailleurs, tout semble toujours fonctionner !), comment commencez-vous à isoler la raison ou à décomposer les choses pour les déboguer ?

156voto

Andreas Wederbrand Points 101

Vérifier le syslog ( /var/log/syslog ) pour les messages concernant les problèmes de fichiers de configuration.

Depuis la ligne de commande, vous pouvez exécuter :

nginx -c /etc/nginx/nginx.conf -t

pour que nginx vérifie la présence d'erreurs dans votre configuration.

47voto

Nanhe Kumar Points 1319

Exécutez cette commande, vous pouvez trouver le problème.

sudo nginx -t

7voto

Arvind07 Points 170

Vous devriez probablement vérifier les erreurs dans /var/log/nginx/error.log .

Dans mon cas, je n'ai pas ajouté le port pour ipv6. Vous devriez également le faire (dans le cas où vous exécutez nginx sur un port autre que 80) :

listen [::]:8000 default_server ipv6only=on;

5voto

Aaron Lelevier Points 149

J'ai exécuté ces commandes pour que nginx soit de nouveau opérationnel :

# remove nginx conf files
apt-get purge nginx

# reinstall
apt-get install nginx

# make sure the default site is enabled
ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default

# start nginx
sudo /etc/init.d/nginx start 

nginx fonctionne maintenant !

3voto

kenisfis Points 31

Vérifiez votre /etc/nginx/sites-available/default ou n'importe quelle copie que vous utilisez, et assurez-vous de décommenter (supprimer) # ) tout } dont vous pourriez avoir besoin en ce qui concerne { qui n'a probablement pas été commenté. C'était mon problème.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X