Erreur Apache

Erreur 401 Unauthorized

Cette erreur indique que la personne ne s’est pas authentifiée correctement.

Erreur 403 Forbidden

Cette erreur indique que le serveur n’a pas le droit de répondre à votre requête. Elle indique aussi que la page recherchée est introuvable.

Erreur 404 Not Found

Cette erreur se produit lorsque l’adresse URL tapée pointe vers un  fichier inexistant. Bien souvent, cela est dû soit à un fichier inexistant, soit une mauvaise saisie de l’adresse.

Erreur 500 Internal Server Error

Avant toute chose, vérifiez sur la page de travaux qu’il n’existe pas un incident global en cours pouvant impacter votre site. Si aucun incident est en cours, il s’agit vraisemblablement d’un problème lié à votre site lui même et à sa programmation.

Si vous avez une erreur 500 qui apparaît sur votre site après avoir mis un fichier .htaccess pensez à vérifier tout d’abord les erreurs de syntaxe, et si vous avez une variable RewriteBase et que celle ci soit dé-commentée.

Cette erreur peut être liée à Apache. La plupart du temps, elle provient d’une mauvaise directive dans le fichier .htaccess de votre site Web.

Vous pouvez analyser le fichier error.log disponible dans le répertoire de votre hébergement. Pour récupérer le chemin absolut de ce fichier, utilisez la directive phpinfo().

Afin de vous assurer une bonne utilisation des fichiers .htaccess, nous vous conseillons de consulter des sites spécialisés, que vous trouverez très facilement avec un moteur de recherche.

Causes possibles de l’erreur 500

Nos serveurs mutualisés veillent constamment à l’intégrité des ressources mutualisées. Ces moniteurs sont les garants de la qualité de service fournie car ils permettent d’éviter la plupart des abus en veillant à ce qu’un site ne puisse pas utiliser trop de ressources au détriment des autres sites hébergés.

Plusieurs paramètres sont surveillés par ces moniteurs et peuvent occasionner l’arrêt de votre script PHP :

  • Un temps d’exécution trop long : si votre script PHP dure plus de 30 secondes, alors il court le risque d’être tué par le système. Si vous obtenez une erreur 500 après un long temps de chargement de la page vous êtes sans doute dans cette situation
  • Trop de mémoire consommée : dès lors que votre script PHP consomme plus de 128 Mo de RAM, il risque d’être stoppé par le système. En général, ceci se traduit par une erreur 500 immédiate, sans temps de chargement préalable.
  • Trop de CPU consommé : si votre script venait à solliciter le CPU trop intensément, il pourrait être tué par le système. Si les erreurs 500 se produisent de manière plutôt aléatoire, vous êtes peut être dans cette situation.
  • Trop de processus PHP simultanés : en hébergement mutualisé, nous sommes obligés de limiter le nombre de processus PHP lancés simultanément par un site ; en effet, sans cette limitation, les ressources pourraient rapidement se retrouver saturées et l’ensemble des sites hébergés impactés. Un cas fréquent est l’affichage des images à travers PHP (du type image.php?crc=/images/monimg.jpg ) : lorsque la page s’affiche, il y a autant de processus PHP lancés que d’images. C’est une mauvaise façon de programmer et dans tous les cas incompatible avec un hébergement mutualisé.
  • Un fichier .htaccess malformé : Vérifiez que vos règles d’URL Rewriting sont correctes, que vous n’utilisez pas de directive php_value, et que vous n’avez pas inséré par le biais d’un éditeur de texte déconseillé (WordPad par exemple) des caractères indésirables.

Remédier à l’erreur 500

Bien entendu, chaque cas est particulier et nécessite sa propre investigation. Nous vous donnons ci-dessous quelques conseils de vérification :

  • Si l’erreur se produit après un long temps de chargement, identifiez un éventuel changement de comportement d’une ressource externe. Par exemple, si votre script établit des connexions avec un autre site Internet, et que ce site est indisponible, alors votre site lui-même risque de l’être. Vérifiez donc tout élément externe : inclusion d’une page/image distante, flux RSScompteurs et livres d’or, etc. ; identifiez la ressource qui pose problème et supprimez la de votre page, ou modifiez votre programmation pour qu’elle tienne compte de la possibilité d’indisponibilité de la ressource. Un cas fréquent est aussi l’appel à des API comme celles de Google ou de Yahoo. N’oubliez pas qu’en mutualisé les IPs sont partagées, si d’autres clients abusent de ces API, l’IP risque d’être temporairement bloquée et donc votre site impacté.
  • Identifiez un éventuel problème de programmation. Vérifiez que vous n’avez pas fait de boucle infinie, ou de code pouvant générer un problème de programmation. Reprenez votre code ligne par ligne en commentant pas à pas des blocs de programmation afin d’identifier la ou les lignes qui posent problème. Vérifiez notamment que vous ne faites pas d’include distant HTTP et que vous ne travaillez qu’avec des chemins disque locaux.
  • Vérifiez vos bases de données : Connectez-vous à votre PhpMyAdmin et assurez que la taille de vos tables, la table de sessions, de statistiques, de log ou autre n’a pas atteint des proportions démesurées. Videz les tables concernées et voyez cet article pour entretenir vos bases MySQL.
  • Vérifiez les fonctionnalités de vos scripts PHP : votre site fait-il du traitement d’images, gère-t-il des statistiques de visite, un Live Chat, envoie-t-il des e-mails en grand nombre, propose-t-il des fichiers lourds en téléchargement, plus généralement, est-il susceptible de générer des actions pouvant consommer beaucoup (trop) de ressources ? De manière générale, vous devriez désactiver systématiquement tout système de logs/stats/tracking incompatibles avec un environnement mutualisé.

Si malgré tout, votre site est trop gourmand et continue à générer des erreurs, la solution la plus raisonnable reste d’envisager la migration du site sur un serveur privé ou un serveur dédié

Erreur 503 Service Unavailable

Cette erreur se traduit par une indisponibilité du service. Elle se produit le plus souvent lorsqu’une surcharge côté serveur survienne et dans ce cas elle peut être passagère. Elle peut se produire aussi suite à une mauvaise configuration du pointage DNS.

Avant toute chose, vérifiez sur la page de travaux qu’il n’existe pas un incident global en cours pouvant impacter votre site. Si un incident est en cours, il n’est pas nécessaire de nous contacter, notre équipe travaille déjà sur le problème.

Si aucun incident est en cours, il s’agit vraisemblablement d’un problème lié à votre site lui même lors qu’un site rencontre un trafic anormalement élevé :

  • Pic de trafic légitime : dans le cas d’un passage TV, Radio, d’un buzz sur les réseaux sociaux, etc.
  • Attaque de type DoS : les attaques par déni de service visent à saturer la connexion du site et à le rendre indisponible. Si votre site est victime d’une telle attaque, vous pouvez rencontrer cette erreur.
  • Anomalie de programmation : dans certains cas, votre site peut générer des connexions en boucle vers lui même (includes distants, etc.). Vérifiez votre programmation.

Qu’il soit légitime ou non, un pic important de trafic ne peut être absorbé en hébergement mutualisé qui reste un mode d’hébergement grand public à usage modéré. Si ce besoin est récurrent, vous devriez choisir un serveur privé ou un serveur dédié

Dans tous les cas cette erreur ne devrait pas persister dans le temps.

Mis à jour le 17 juillet 2019

Articles connexes