Maison  >  Article  >  Opération et maintenance  >  502 mauvaise passerelle nginx, qu'est-ce que cela signifie ?

502 mauvaise passerelle nginx, qu'est-ce que cela signifie ?

藏色散人
藏色散人original
2019-08-28 10:46:3965051parcourir

502 mauvaise passerelle nginx, qu'est-ce que cela signifie ?

1. Que signifie 502 bad gateway nginx ?

De manière générale, 502 Bad Gateway signifie qu'il y a un problème avec le site Web que vous visitez, car lorsque le serveur 502 Bad Gateway fait office de passerelle ou de proxy, c'est pour compléter l'accès au serveur suivant. , mais le serveur renvoie Une réponse illégale a été reçue. Peut-être temporairement, peut-être oui. Il est recommandé d'attendre un moment et de réessayer d'y accéder.

2. Qu'est-ce qui cause la mauvaise passerelle 502 ?

La plupart des raisons pour lesquelles la passerelle 502 est mauvaise sont dues à un délai de connexion. Nous envoyons une requête au serveur. Parce que le serveur a actuellement trop de liens, le serveur ne peut pas donner une réponse normale 502. erreur de passerelle.

De manière générale, le serveur agit simplement comme une passerelle ou un proxy pour satisfaire la demande du client (comme un navigateur Web) d'accéder à l'URL que nous avons demandée. Le serveur a reçu une réponse non valide du serveur en amont auquel il a demandé l'accès. Cela ne signifie pas que le serveur en amont est en panne (passerelle/proxy qui ne répond pas), mais que le serveur en amont et la passerelle/proxy ne sont pas d'accord sur le protocole d'échange de données. Le protocole Internet étant fixe, cela signifie qu'une ou deux machines ont été mal ou pas entièrement programmées.

3. Quelle est la cause de l'erreur 502 corrigée ?

Généralement, ce problème est dû à une mauvaise communication IP entre les ordinateurs principaux, y compris éventuellement le serveur Web du site Web auquel vous essayez d'accéder. Lors de l'analyse de ce problème, vous devez vider le cache de votre navigateur avant de revenir.

Si vous constatez ce problème sur tous les sites Web que vous essayez de visiter en surfant sur Internet, il y a deux possibilités

① Votre FAI a une panne/surcharge d'équipement majeure

② Oui Problèmes avec la connexion Internet interne tels que votre pare-feu ne fonctionne pas correctement.

Dans ce cas, seul votre FAI peut vous aider. Dans le second cas, vous devez résoudre ce qui bloque votre accès à Internet.

Si vous rencontrez ce problème uniquement avec certains des sites Web auxquels vous essayez d'accéder, il s'agit très probablement d'un problème avec l'un de ces sites Web, dont l'équipement fonctionne mal ou est surchargé. Contactez l'administrateur de votre site.

4. Comment résoudre 502 passerelles défectueuses ?

1. Actualiser

Pour parler franchement, c'est très simple - actualiser (pas un rafraîchissement ordinaire)

L'actualisation mentionnée ici fait principalement référence au téléchargement depuis le serveur Les données sont envoyées au navigateur du disque dur local, puis les données sont lues à partir du disque dur local et affichées dans le navigateur pour que nous puissions les voir. Il existe généralement deux modes d'actualisation :

①Actualisation de base : cliquez sur Actualiser ou utilisez la touche de raccourci F5

L'actualisation de base récupère simplement les données du disque dur local vers le navigateur, et non redirigez-le vers le navigateur. Le serveur fait la demande. La plupart des utilisateurs actualisent ainsi la plupart du temps, et cela n'a aucun effet lorsqu'ils rencontrent une erreur 502.

②Actualiser depuis le serveur : Si vous re-cliquez directement sur le lien web que vous souhaitez parcourir, vous retrouverez la page de message d'erreur "502 bad gateway" qui vient de s'afficher. Après avoir re-cliqué sur le lien, vous pouvez naviguer normalement.

Solution : Actualiser depuis le serveur : touche de raccourci ctrl+F5 Cela renverra la requête au serveur Si le serveur peut vous répondre normalement, vous pourrez voir la page.

2. Problème de mise en mémoire tampon DNS

Cette situation est principalement causée par la visite de certains sites Web étrangers bloqués par le pare-feu national, tels que YouTube et Facebook.

Solution : Dans ce cas il est généralement accessible en quelques minutes. Vous pouvez également essayer d'exécuter ipconfig /flushdns dans la fenêtre cmd pour actualiser le cache DNS

3. Le DNS est piraté

Solution : Changez le DNS, 114.114.114.114 est recommandé et le DNS public d'Ali tels que : 223.5.5.5, 223.6.6.6

5. Erreur de passerelle incorrecte Nginx 502

① Vérifiez si php-cgi est en cours d'exécution

Parfois, en raison d'un trafic excessif sur le site Web ou pour d'autres raisons, php-cgi tombe directement en panne, nous devons donc vérifier si php-cgi est en cours d'exécution. Exécutez la commande suivante :

    ps -A | grep php5-cgi

S'il n'est pas en cours d'exécution, nous pouvons démarrer manuellement

    /etc/init.d/php_cgi start

Si vous constatez que php-cgi tombe parfois en panne pour des raisons inconnues, vous pouvez utiliser le script suivant pour résoudre temporairement ce problème.

    if ps aux | grep ‘php5-cgi’ | grep -v grep > /dev/null ; then echo "PHP-cgi is runnning !" else echo "PHP-cgi is down. Starting over…" /etc/init.d/php-fcgi start fi

②La raison pour laquelle le nombre de processus fastcgi n'est pas suffisant et le temps d'exécution de php est long

Le nombre de processus fastcgi peut modifier la valeur de max_children dans php-fpm.conf, et la mémoire consommée par php-cgi aux heures de pointe est de 20 Mo, veuillez la calculer en fonction de votre propre situation de mémoire.

La limitation du temps d'exécution de php peut être définie dans request_terminate_timeout dans php-fpm.conf afin d'éviter que des bugs dans le programme php ne provoquent la mort de php-cgi.

③Le temps d'exécution de FastCGI est trop long

Augmentez les valeurs des paramètres suivants en fonction de la situation réelle

    fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300;

6. Résolvez l'erreur 502 dans nginx

    ①查看当前的PHP FastCGI进程数是否够用

    netstat -anpo | grep "php-cgi" | wc -l

    如果实际使用的"FastCGI进程数"接近预设的"FastCGI进程数",那么,说明"FastCGI进程数"不够用,需要增大。

    ②部分PHP程序的执行时间超过了Nginx的等待时间,可以适当增加nginx.conf配置文件中FastCGI的timeout时间

    例如,系统当前的PHP FastCGI进程数明显超过了预设值的64这个数值,在电信的服务器上查看当前的PHP FastCGI进程数没有高于64这个数值,而且网通线路的活动连接明显高于电信的活动连接,由此可以说明出现nginx不稳定的情况是由于服务器访问负载过大引起的。

    总结:php-cgi进程数不够用、php执行时间长、或者是php-cgi进程死掉,都会出现502错误。

更多Nginx相关技术文章,请访问Nginx使用教程栏目进行学习!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn