Erreur 503 Apache : Service Indisponible

Diagnostiquer les causes d'indisponibilité avec Apache.

L'erreur 503 Service Unavailable sous Apache indique que le serveur ne peut temporairement pas traiter la requête. Contrairement à une erreur 500, c'est généralement un problème de capacité ou de configuration, pas de code.

Les causes courantes incluent : surcharge, backend down quand Apache agit comme proxy, ou maintenance programmée. Ce guide vous aide à identifier et résoudre le problème.

Causes Principales

  • mod_proxy backend down : Apache en reverse proxy ne peut pas joindre le backend (Tomcat, Node, etc.).
  • MaxRequestWorkers atteint : Tous les workers Apache sont occupés, les nouvelles connexions sont rejetées.
  • Maintenance mode : Un fichier .htaccess ou VirtualHost renvoie intentionnellement 503.

Diagnostic

  • Logs Apache : Consultez /var/log/apache2/error.log pour le message d'erreur détaillé.
  • server-status : Activez mod_status pour voir les workers et leur état.
  • Backend health : Si proxy, vérifiez que le backend répond directement.

Solutions

  • Augmenter MaxRequestWorkers : Ajustez la valeur dans mpm_prefork ou mpm_event selon la RAM disponible.
  • Redémarrer le backend : Si mod_proxy, relancez le service backend (Tomcat, Node, etc.).
  • Désactiver maintenance : Vérifiez les règles .htaccess ou VirtualHost qui forcent le 503.

Questions Fréquentes

Comment savoir si c'est une surcharge ou un backend down ?

Les logs Apache le disent. "proxy: error" = backend. "server reached MaxRequestWorkers" = surcharge.

Le 503 est-il mieux qu'un 500 pour les visiteurs ?

Oui, 503 indique un problème temporaire. Les crawlers Google réessaient plus tard au lieu de considérer la page comme cassée.

Comment faire une maintenance propre avec 503 ?

Configurez une page de maintenance avec header "Retry-After" pour indiquer quand réessayer.

MoniTao différencie-t-il 503 des autres erreurs ?

Oui, MoniTao vous indique le code exact. Vous pouvez configurer des alertes différentes pour 503 (temporaire) vs 500 (erreur code).

Prêt à dormir sur vos deux oreilles ?

Commencez gratuitement, sans carte bancaire.