Nous sommes tous passés par là. Votre merveilleux site web a fonctionné avec succès pendant des mois puis – BAM – il disparaît. Ou, plus souvent, certaines fonctions cessent de fonctionner.
Étape 1 : Identifier le problème
Cela peut sembler évident, mais j’ai connu de nombreux développeurs qui ouvraient leur IDE et commençaient à bidouiller du code au hasard. À ce stade, il est plus important de déterminer le problème que la cause.
Le site est-il indisponible ?
Une page ou une fonction particulière est-elle défaillante ?
Est-il limité à certains navigateurs ?
Étape 2 : Tester la disponibilité des ressources
Neuf fois sur dix, le problème sera dû à un problème de connectivité de votre côté ou de celui du client. Si vous ne pouvez accéder à aucune autre page, il n’est pas surprenant que votre site Web ait disparu. Cela dit, ce n’est pas toujours évident ; certaines plages IP, certains pays ou certaines sections de l’internet peuvent être temporairement bloqués.
Testez votre site depuis différents endroits – un serveur proxy public vous aidera à déterminer s’il s’agit d’un problème local ou global. Si possible, examinez l’état d’autres sites fonctionnant à partir du même serveur ou du même hôte web.
L’espace disque est un problème moins évident. Si vous gérez un site très fréquenté, les journaux du serveur peuvent rapidement utiliser l’espace disponible, même si les besoins de stockage de votre application sont faibles.
N’oubliez pas que vous pouvez utiliser des ressources sur d’autres serveurs. Il peut s’agir de fichiers hébergés par un CDN, de serveurs de bases de données ou d’API hébergées à distance, comme celles de Google Maps, YouTube, Twitter, des services publicitaires, etc.
Vous devez également vérifier la charge de vos serveurs.
Un pic de trafic important ou une attaque par déni de service entraînera des problèmes d’accès.
Enfin, l’enregistrement de votre domaine est-il valide et le serveur DNS répond-il comme il le devrait ?
Vous devez également vérifier la charge de vos serveurs.
Un pic de trafic important ou une attaque par déni de service entraînera des problèmes d’accès.
Enfin, l’enregistrement de votre domaine est-il valide et le serveur DNS répond-il comme il le devrait ?
Étape 3 : Identifier ce qui a changé
Une fois que vous avez rejeté la connectivité, le trafic, DNS et l’espace disque, il est temps de déterminer ce qui a changé. 999 fois sur 1 000, le problème aura été causé par une mise à jour.
Vous n’avez peut-être pas touché aux dossiers, mais êtes-vous sûr que d’autres ne l’ont pas fait ?
- Vérifiez auprès de tous ceux qui y ont accès, mais ne les croyez pas nécessairement. Voici une conversation typique que vous rencontrerez…
Votre application n’est peut-être pas directement en cause. Votre hébergeur a-t-il mis à jour le système d’exploitation, le langage d’exécution, le logiciel de base de données ou les autorisations de fichiers ?
- Bien que les fournisseurs s’efforcent de garantir la rétrocompatibilité de PHP, Ruby, Python, MySQL, PostgreSQL, etc., il est presque certain que des fonctionnalités seront modifiées ou supprimées d’une édition à l’autre.
Étape 4 : Rejeter les cas limites
Bien que cela soit rare, vous devez rechercher des signes de fissuration. Les logiciels tels que WordPress, Joomla et OScommerce sont des cibles évidentes, mais les changements sont souvent subtils car le pirate veut conserver l’accès. Par exemple, vous pouvez découvrir qu’un module complémentaire d’exploration de fichiers a été installé ou que des pages de phishing sont apparues dans la structure des fichiers.
Enfin, il ne faut jamais exclure les problèmes de matériel. Des puces mémoire ou des secteurs de disque corrompus peuvent être à l’origine d’un certain nombre de problèmes étranges. Si possible, évaluez votre application sur une configuration similaire ou installez une version de test distincte sur le même serveur.
Étape 5 : Corriger votre application
Une fois que vous avez éliminé l’impossible, tout ce qui reste, aussi improbable soit-il, doit être la vérité. Peut-être que votre code n’est pas aussi parfait que vous le pensiez…
Avez-vous des conseils pour diagnostiquer les problèmes de sites Web ou d’applications ? Quel a été le problème le plus difficile que vous ayez rencontré ?