Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 12629|Répondre: 0

[Web] L’autodémarrage Nginx a échoué

[Copié le lien]
Publié sur 30/05/2015 23:46:28 | | |

Linode a de nouveau été mis à jour~ Mais comme l’ancienne machine dans la salle informatique japonaise prendra quelques semaines à être mise à jour, j’ai hâte, alors j’ai ouvert une nouvelle machine, prévoyant de rentrer chez moi, et au fait, de balayer les déchets inutiles sur le serveur.

La nouvelle machine utilise le script d’installation en un clic de lnmp que j’ai moi-même écrit (en fait, la plupart du code se trouve en ligne = =##), et après avoir créé le script sur DigitalOcean, je l’ai mis sur Linode pour l’installer. Il n’y a eu aucun problème d’installation et de déplacement, mais dès qu’il a été redémarré après l’installation, il y a eu un problème.


Après redémarrage, il est logique que Nginx démarre automatiquement, mais après une longue attente, le site web reste inaccessible. Connectez-vous à SSH et exécutez :

Service Nginx Start

Lancez Nginx manuellement, et le site web sera accessible en un rien de temps. Le script de démarrage automatique fonctionne bien, et il n’y a pas de problème de démarrage manuel, pourquoi nginx ne démarre-t-il tout simplement pas ?

En parcourant les journaux, j’ai trouvé une phrase comme celle-ci :

02/05/2014 17:02:28 [URGENCE] 2912#0 : bind() vers [2400:8900 ::f03c :91ff :fe6e :5889] :80 échoué (99 : impossible d’attribuer l’adresse demandée)

J’ai l’impression qu’au démarrage de Nginx, IPv6 n’a pas été initialisé, donc le démarrage a échoué. Quand je me connecte à SSH et que je lance Nginx manuellement, IPv6 a déjà été initialisé, donc il peut démarrer normalement.

Vous avez probablement deviné la raison, comment résoudre ça ? Après une longue journée sur Google, j’ai trouvé un problème et une solution similaires sur ServerFault, et je vais l’enregistrer ici.

Insérer dans /etc/sysctl.conf :
  1. sysctl -w net.ipv6.conf.eth0.dad_transmits=0
Code de copie
Ou:

Ajoutez une ligne dans /etc/network/interfaces :
  1. post-up while ip -6 addr show tentative | grep . > /dev/null ; do sleep 1 ; done
Code de copie
J’utilise cette dernière méthode pour résoudre le problème.




Précédent:À propos de Discuz ! (X3.1) Comment activer le chiffrement https
Prochain:Projets participants à la Houpu Cup
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com