Partage de technologie

Analyse des principes et solutions aux 502 Bad Gateway apparaissant dans les navigateurs

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Préface

De tels problèmes sont principalement traités comme des maladies incurables

1. Comme le montre la question

Insérer la description de l'image ici

2. Analyse des principes

502 Les erreurs de passerelle incorrecte indiquent que le serveur a reçu une réponse non valide d'un serveur en amont alors qu'il agissait en tant que passerelle ou proxy.

Se produit généralement sur des réseaux agissant comme proxys ou passerellesserveuractivé, comme Nginx, Apache ou un équilibreur de charge

De manière générale, cette situation s’articule principalement autour de l’analyse des problématiques suivantes :

  • Le serveur en amont est en panne: Le serveur en amont peut être en panne pour diverses raisons, notamment une panne matérielle, des pannes logicielles ou des problèmes de réseau.

  • Serveur surchargé: Le serveur en amont peut être surchargé en raison du traitement d'un trop grand nombre de requêtes, entraînant une incapacité à répondre à temps.

  • problème d'Internet: Il peut y avoir des problèmes avec la connexion réseau entre les serveurs, tels qu'un délai d'attente, une perte de paquets, etc., entraînant l'impossibilité d'établir une connexion stable.

  • Problème DNS: des erreurs de résolution DNS peuvent empêcher le serveur de trouver la bonne adresse IP du serveur en amont

3. Solutions

  1. Vérifiez d’abord si vous pouvez pinger l’adresse IP correspondante.

  2. Vérifiez DNS ou actualisez le cache de résolution DNS (ipconfig /flushdns

Insérer la description de l'image ici

Ce qui précède peut être facilement vérifié par le personnel du client.

Si vous êtes développeur, vous avez besoin

  1. Vérifier l'état du serveur en amont : Assurez-vous que le serveur en amont fonctionne correctement et est capable de gérer les requêtes.L'état du serveur en amont peut être vérifié en y accédant directement

  2. Vérifier la charge du serveur : Assurez-vous que le serveur en amont n'est pas surchargé.Si la charge est trop élevée, envisagez d'augmenter les ressources du serveur ou d'optimiser les performances des applications.

La logique générale est la suivante :

  • Vérifier le journal des erreurs Nginx : Vérifiez le journal des erreurs sur le serveur Nginx, généralement situé dans /var/log/nginx/error.log, pour déterminer la cause spécifique de l'erreur.
tail -f /var/log/nginx/error.log
  • 1
  • Vérifier l'état du serveur en amont : Accédez directement au serveur en amont via curl ou un navigateur pour vérifier son état de réponse
curl -I http://upstream_server_address
  • 1
  • Vérifier la configuration de Nginx: Assurez-vous que Nginx est correctement configuré, notamment l'adresse de la directive proxy_pass
location / {
    proxy_pass http://upstream_server_address;
}
  • 1
  • 2
  • 3
  • Vérifier la connexion réseau: Utilisez ping ou traceroute pour vérifier la connexion réseau entre Nginx et le serveur en amont
ping upstream_server_address
traceroute upstream_server_address
  • 1
  • 2

En combat réel, dans certains cas, vous pouvez actualiser la résolution DNS.

Pour le côté serveur, vous pouvez redémarrerConfiguration de Nginx

En général, il y a trop de requêtes, ce qui entraîne l'impossibilité d'analyser les requêtes individuelles.