500 Internal Server Error signifie que le serveur a rencontré une condition inattendue qui l’a empêché de satisfaire la requête. C’est le code fourre-tout des défaillances côté serveur lorsqu’aucun code 5xx plus précis ne s’applique.
La cause n’est presque jamais visible de l’extérieur, car les serveurs ne doivent pas révéler de détails internes. Le journal d’erreurs du serveur, le journal de l’application ou un service de suivi des erreurs contient la vraie raison : exception non interceptée, erreur fatale PHP, échec de connexion à la base de données, erreur de syntaxe dans .htaccess ou directive de configuration que le serveur ne comprend pas.
Le client ne peut pas corriger une erreur 500. Réessayer plus tard peut fonctionner si le problème était temporaire.
Exemple de réponse
HTTP/1.1 500 Internal Server Error
Date: Fri, 06 Nov 2026 10:15:32 GMT
Server: Apache
Content-Type: text/html; charset=iso-8859-1
Content-Length: 273
Connection: close
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>500 Internal Server Error</title>
</head><body>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error or misconfiguration and was unable to complete your request.</p>
</body></html> SEO et vérification des redirections
Google traite d’abord les erreurs 5xx comme temporaires : Googlebot ralentit l’exploration, et les pages déjà indexées restent un certain temps dans l’index. Si les erreurs persistent, les URL sont retirées. Si le fichier robots.txt lui-même renvoie une erreur 5xx, Google considère temporairement l’ensemble du site comme interdit et suspend l’exploration ; si l’erreur dure plus de 30 jours, il se rabat sur la dernière copie de robots.txt qu’il a en cache.
Une erreur 500 dans une chaîne de redirections vient souvent d’une règle de réécriture défectueuse. Apache, par exemple, renvoie 500 lorsque des règles de réécriture provoquent plus de 10 redirections internes (« Request exceeded the limit of 10 internal redirects »). Une telle boucle interne n’apparaît jamais sous forme de sauts 3xx : le Détecteur de boucles de redirection repère les boucles entre URL, tandis que les boucles internes se manifestent par une erreur 500.
Causes fréquentes et cas d’usage
- Une exception non interceptée ou une erreur fatale dans l’application (PHP, Node.js, Python, etc.).
- Des directives ou une syntaxe invalides dans
.htaccessou dans la configuration du serveur. - Des permissions ou un propriétaire de fichiers incorrects sur les scripts.
- Des ressources épuisées, comme le
memory_limitde PHP, ou un échec de connexion à la base de données. - Une règle de réécriture qui boucle en interne.