web-dev-qa-db-fra.com

Comment détecter la cause d'une erreur temporairement indisponible avec le service 503 et la gérer?

je reçois le service 503 d'erreur temporairement indisponible plusieurs fois dans mon application .__ et je veux détecter pourquoi cette erreur se produit, comment? s'il y a un fichier journal ou quelque chose comme ça, je ne connais pas bien Apache.

la deuxième chose est que, est-il possible de gérer cette erreur, que lorsque cela se produit, Apache est redémarré?

43
Mahmoud Saleh

Il existe bien sûr des fichiers journaux Apache. Recherchez dans les fichiers de configuration Apache le mot clé '' Log '', vous en trouverez certainement beaucoup. Les emplacements d'installation et de votre système d'exploitation peuvent varier (sur un serveur Linux typique, il s'agira de /var/log/Apache2/[access|error].log).

Avoir une erreur 503 dans Apache signifie généralement la page/le service mandaté n'est pas disponible . Je suppose que vous utilisez Tomcat et cela signifie que Tomcat ne répond pas à Apache (délai d'attente?) Ou n'est même pas disponible (panne? Planté?). Il y a donc des chances que ce soit une erreur de configuration dans la manière de connecter Apache et Tomcat ou une application à l'intérieur de Tomcat qui n'envoie même pas de réponse pour Apache.

Parfois, dans les serveurs de production, il se peut aussi que vous obteniez trop de trafic pour le serveur Tomcat. Apache traite plus de demandes que le service mandaté (Tomcat) ne peut en accepter, de sorte que le backend est devenu indisponible.

42
regilero

Si votre exception à partir du fichier error.log est la suivante: 

Aucune connexion n'a pu être établie car la machine cible l'a activement refusée. : AH00957: HTTP: Echec de la tentative de connexion à 127.0.0.1:9090 (localhost)

essayez de modifier le fichier httpd.conf à partir de 

Listen 90

à 

Listen 127.0.0.1:9090
0
Bhaskara Arani