Quelles sont les causes de l’erreur 500 et comment la corriger ? Guide complet

Quelles sont les causes de l'erreur 500 et comment la corriger ? Quelles sont les causes de l'erreur 500 et comment la corriger ? image
Rate this post

L’erreur 500 Internal Server Error : de quoi s’agit-il exactement ?

L’erreur 500, également appelée Internal Server Error, est un code de réponse HTTP générique indiquant qu’un problème est survenu sur le serveur, sans qu’il puisse préciser la cause exacte. Elle peut survenir sur n’importe quel site, quel que soit le CMS utilisé (WordPress, Joomla, etc.). Le message peut varier : « 500 Internal Server Error », « Erreur 500 », ou une page blanche. Dans tous les cas, le site est inaccessible.

Les causes fréquentes de l’erreur 500

Les origines sont multiples, mais elles se regroupent en quelques catégories principales :

1. Problèmes liés au fichier .htaccess

Un fichier .htaccess corrompu ou mal configuré est l’une des causes les plus courantes. Par exemple, des règles de réécriture d’URL incorrectes, des directives de cache inadaptées ou un fichier endommagé après une mise à jour peuvent déclencher l’erreur 500.

2. Erreur de script PHP (memory limit, execution time)

Un script PHP qui consomme trop de mémoire ou met trop de temps à s’exécuter peut faire planter le serveur. Par exemple, un plugin WordPress défectueux ou un thème mal codé peut dépasser les limites définies dans le fichier php.ini.

3. Permissions de fichiers incorrectes

Les fichiers et dossiers sur le serveur doivent avoir des permissions adaptées. Si les permissions sont trop restrictives (par exemple 600 pour un dossier qui nécessite 755), le serveur ne peut pas lire ou exécuter les fichiers, ce qui provoque une erreur 500.

4. Problème de base de données

Une base de données corrompue ou des informations de connexion erronées dans le fichier de configuration (comme wp-config.php pour WordPress) peuvent également générer une erreur 500.

5. Incompatibilité de version PHP

Si votre site utilise une version de PHP obsolète ou trop récente par rapport aux scripts, des erreurs de compatibilité apparaissent. Par exemple, un plugin codé pour PHP 7.4 peut ne pas fonctionner sur PHP 8.2.

6. Ressources serveur insuffisantes

Un pic de trafic ou un script gourmand peut épuiser la mémoire ou le temps CPU alloué à votre site, entraînant une erreur 500.

Comment diagnostiquer l’erreur 500 ?

Avant de chercher une solution, il faut identifier la cause précise. Voici les étapes de diagnostic :

Vérifier les logs du serveur

Les logs d’erreur (error logs) sont votre meilleur allié. Dans cPanel, vous les trouverez dans la section « Error Log » ou « Raw Access Log ». Sur un serveur dédié, ils sont généralement dans /var/log/apache2/error.log (Apache) ou /var/log/nginx/error.log (Nginx). Cherchez les lignes contenant « 500 » ou « PHP Fatal error ».

Activer l’affichage des erreurs PHP

Si les logs ne suffisent pas, vous pouvez activer l’affichage des erreurs PHP dans un fichier php.ini ou via le fichier .htaccess (temporairement) :

  • Ajoutez cette ligne dans le fichier .htaccess : php_flag display_errors on
  • Ou créez un fichier phpinfo.php avec <?php phpinfo(); ?> pour voir la configuration.

Attention : Ne laissez pas l’affichage des erreurs activé en production pour des raisons de sécurité.

Tester avec un fichier PHP basique

Créez un fichier test.php contenant simplement <?php echo 'Hello'; ?>. Si ce fichier s’affiche correctement, le problème vient probablement d’un script spécifique ou du fichier .htaccess.

Comment corriger l’erreur 500 : étapes pratiques

Voici les solutions les plus efficaces, à appliquer dans l’ordre :

1. Renommer le fichier .htaccess

Connectez-vous à votre serveur via FTP ou le gestionnaire de fichiers. Renommez .htaccess en .htaccess_old. Si l’erreur disparaît, le fichier est en cause. Vous pouvez ensuite en générer un nouveau depuis votre CMS (par exemple, dans WordPress, allez dans Réglages > Permaliens et cliquez sur « Enregistrer les modifications »).

2. Augmenter la mémoire PHP

Si le problème est lié à une limite de mémoire, éditez le fichier php.ini ou .htaccess pour augmenter la valeur :

  • Dans php.ini : memory_limit = 256M
  • Dans .htaccess : php_value memory_limit 256M

Redémarrez le serveur si nécessaire.

3. Vérifier et corriger les permissions

Les permissions recommandées sont :

Type Permission
Dossiers 755
Fichiers 644
Fichiers sensibles (wp-config.php) 600

Utilisez un client FTP pour appliquer ces permissions récursivement.

4. Désactiver tous les plugins (WordPress)

Renommez le dossier plugins en plugins_old via FTP. Si l’erreur disparaît, un plugin est en cause. Réactivez-les un par un pour identifier le fautif.

5. Revenir à un thème par défaut

Si le problème persiste, basculez temporairement vers un thème par défaut (Twenty Twenty-Three par exemple). Renommez le dossier de votre thème actuel via FTP pour forcer WordPress à utiliser un thème par défaut.

6. Vérifier la version PHP

Dans votre panneau d’hébergement, basculez vers une version PHP antérieure ou plus récente (par exemple de 8.0 à 7.4). Si l’erreur disparaît, un script est incompatible avec la version actuelle.

7. Réparer la base de données

Pour WordPress, vous pouvez ajouter cette ligne dans wp-config.php : define('WP_ALLOW_REPAIR', true); puis accéder à votresite.com/wp-admin/maint/repair.php. N’oubliez pas de supprimer la ligne après la réparation.

Tableau récapitulatif des causes et solutions

Cause Symptôme Solution rapide
.htaccess corrompu Erreur sur tout le site Renommer le fichier
Limite mémoire PHP dépassée Erreur sur une page spécifique Augmenter memory_limit
Permissions incorrectes Erreur 500 après upload Corriger les permissions
Plugin ou thème défectueux Erreur après installation Désactiver le plugin/changer de thème
Version PHP inadaptée Erreur après mise à jour PHP Changer de version PHP
Base de données corrompue Erreur sur les pages dynamiques Réparer la BDD

Erreurs à éviter lors du dépannage

  • Ne pas paniquer : l’erreur 500 est souvent temporaire et facile à résoudre.
  • Ne pas modifier plusieurs choses à la fois : changez un élément, testez, puis passez au suivant.
  • Ne pas ignorer les logs : ils contiennent la clé du problème.
  • Ne pas laisser l’affichage des erreurs activé : risqué pour la sécurité.

Questions fréquentes sur l’erreur 500

L’erreur 500 est-elle dangereuse pour mon site ?

Non, c’est une erreur côté serveur qui n’affecte pas vos données. Cependant, si elle persiste, vos visiteurs ne peuvent pas accéder au site, ce qui nuit à votre référencement et à votre image.

Puis-je corriger l’erreur 500 sans accès FTP ?

Oui, si vous avez accès au panneau de contrôle de votre hébergement (cPanel, Plesk), vous pouvez utiliser le gestionnaire de fichiers pour modifier .htaccess ou les permissions. Sinon, contactez votre hébergeur.

L’erreur 500 est-elle la même chose qu’une erreur 503 ?

Non, l’erreur 503 (Service Unavailable) indique que le serveur est temporairement indisponible (maintenance, surcharge), tandis que l’erreur 500 est une erreur interne générique.

Que faire si l’erreur 500 apparaît après une mise à jour de WordPress ?

Essayez de désactiver tous les plugins et de revenir au thème par défaut. Si cela résout le problème, mettez à jour vos plugins et thèmes un par un.

Comment prévenir l’erreur 500 à l’avenir ?

Maintenez votre CMS, vos plugins et votre thème à jour. Utilisez un hébergement de qualité, surveillez vos logs régulièrement et effectuez des sauvegardes fréquentes.

Recommandations pour éviter de futures erreurs 500

Pour minimiser les risques, adoptez ces bonnes pratiques :

  • Effectuez toujours une sauvegarde complète avant toute modification majeure (mise à jour, installation de plugin, changement de thème).
  • Utilisez un environnement de staging pour tester les changements avant de les appliquer en production.
  • Surveillez les logs d’erreur régulièrement pour détecter les anomalies tôt.
  • Choisissez un hébergeur fiable qui offre un support technique réactif.
  • Limitez le nombre de plugins et privilégiez des solutions légères et bien codées.

En suivant ces conseils, vous réduirez considérablement les risques d’erreur 500 et assurerez une meilleure disponibilité de votre site. Si malgré tout l’erreur persiste, n’hésitez pas à contacter votre hébergeur : il dispose des accès serveur pour diagnostiquer et résoudre les problèmes les plus complexes.

Photo by Nils Rotura on Pexels

4 thoughts on “Quelles sont les causes de l’erreur 500 et comment la corriger ? Guide complet

  1. Merci pour ce guide très complet ! J’ai une question : est-ce que l’erreur 500 peut aussi venir d’un problème de certificat SSL ?

    1. Bonjour, généralement l’erreur 500 n’est pas liée au certificat SSL. Les problèmes SSL génèrent plutôt des erreurs comme ‘ERR_CERT_COMMON_NAME_INVALID’ ou ‘NET::ERR_CERT_AUTHORITY_INVALID’. Cependant, une mauvaise configuration du serveur peut parfois causer une 500, mais c’est rare. Vérifiez d’abord les logs serveur pour confirmer.

  2. Super article ! J’ai eu exactement ce problème avec mon site WordPress après une mise à jour de plugin. La solution de renommer le dossier plugins a fonctionné pour moi.

    1. Merci pour votre retour ! Oui, désactiver les plugins en renommant leur dossier est une excellente méthode de diagnostic pour WordPress. Cela permet d’identifier rapidement un plugin défectueux sans perdre de données. N’oubliez pas de remettre le nom d’origine après avoir trouvé le coupable.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *