Retour au blog Monitoring - 8 min

Site web inaccessible : distinguer DNS, TLS, serveur et application

Un site inaccessible échoue à une étape précise : DNS, connexion, certificat ou code HTTP. Lisez le symptôme avant de tout redémarrer.

Un site inaccessible échoue à une étape précise. Le nom ne se résout pas, la connexion n’aboutit pas, le certificat est refusé, ou le serveur répond un code d’erreur. Chaque étape a un correctif différent. Redémarrer PHP quand le domaine a expiré ne change rien. Tout mélanger coûte l’heure où les visiteurs partent.

Lire le message avant d’agir

Depuis un réseau qui n’est pas celui du bureau (partage 4G), en navigation privée, notez la phrase exacte du navigateur ou le code.

Ce que vous voyezÉtape en échecPiste
« Serveur introuvable », NXDOMAINDNSDomaine, enregistrements, résolveur
Tourne longtemps, puis délaiRéseau ou serveur muetPare-feu, mauvaise IP, machine arrêtée
Avertissement de certificatTLSDate, nom, chaîne. Voir l’incident certificat
403Droit d’accèsPare-feu, pays, fichier d’auth
500ApplicationPHP, base, plugin, déploiement
502, 503, 504, 522Proxy ou origine saturéeMaintenance, timeout, hébergeur
Page d’un autre siteMauvais vhost ou DNSL’IP ne sert plus votre contenu

Les familles 4xx et 5xx sont détaillées dans différence entre 4xx et 5xx. Un 503 prévu pour une maintenance n’est pas une panne à « réparer » comme un 500 : gérer une 503. Un 522 est typiquement le proxy qui n’obtient pas de réponse de l’origine : erreur 522.

Quatre commandes pour situer l’étape

À lancer depuis une machine qui voit la même panne, en remplaçant le domaine :

``bash dig exemple.fr A +short curl -sI --max-time 20 https://exemple.fr curl -sI --max-time 20 http://exemple.fr ``

dig sans réponse, ou une IP inattendue, fixe le travail sur le DNS et le registrar. La propagation se vérifie comme dans propagation DNS. Si le nom expire ces jours-ci, ouvrez le registrar avant l’hébergeur : renouvellement du domaine.

curl qui échoue au handshake TLS : lisez la date et le nom du certificat. Ce n’est pas une erreur PHP. Si le certificat est déjà dépassé, suivez SSL expiré : que faire.

curl qui affiche HTTP/1.1 500 (ou 503) : le TLS et le DNS fonctionnent. Regardez le journal PHP ou du serveur web à l’heure de l’essai, et le dernier déploiement. Un plugin ajouté il y a une heure se désactive plus vite qu’une restauration complète.

Aucun de ces essais ne vaut s’il est lancé sur le serveur lui-même vers localhost. Localhost peut répondre pendant que le pare-feu ou le DNS public, eux, ne laissent personne entrer. Le contrôle utile vient de l’extérieur. Un service comme SiteGarde interroge l’URL comme un visiteur, et montre le code réellement servi.

Si seulement certains le voient

Vous, oui, un client, non : cache, DNS de son opérateur, ou blocage de son pays. Le cas géographique est dans site inaccessible depuis certains pays. Vous, non, le reste du monde, oui : votre résolveur, votre fichier hosts, ou un pare-feu de bureau. Demandez à quelqu’un hors de l’entreprise, ou utilisez le test de disponibilité depuis un autre réseau.

Décider de la suite

  • DNS ou domaine : registrar et zone, pas le thème.
  • Certificat : renouvellement ou installation de la chaîne, puis rechargement du serveur web.
  • 5xx juste après une mise à jour : revenir à la version précédente du déploiement si les données n’ont pas bougé.
  • Fichiers ou base détruits : là, et seulement là, le plan de reprise.
  • Maintenance voulue : page 503 servie ailleurs si l’origine est arrêtée, sinon elle tombe avec le serveur.

Notez l’heure, le symptôme et la couche. La personne d’astreinte suivante ne doit pas recommencer par « vider le cache » si vous avez déjà prouvé que le nom ne se résout plus.

Questions fréquentes

« Ça marche chez moi » veut-il dire que le site est en ligne ?

Non. Le cache du navigateur, un DNS local ou le réseau du bureau peuvent afficher une page que les autres ne joignent plus. Il faut un essai depuis un autre réseau, sans cache.

Quelle est la différence entre un DNS en échec et un 500 ?

Si le nom ne se résout pas, aucune requête HTTP ne part : il n’y a pas de code 500. Un 500 signifie que le serveur a répondu, et que l’application a échoué. Les correctifs n’ont rien en commun.

Faut-il tout de suite restaurer une sauvegarde ?

Seulement si les fichiers ou la base sont perdus ou corrompus. Une erreur de certificat, un DNS expiré ou un 503 de maintenance se corrigent sans restauration. Restaurer trop tôt écrase des données encore bonnes.

Surveiller mes URL