Comment déboguer mon Prestashop ?
26/10/2022 | Anaïs KB | Prestashop
"Mon Prestashop est en erreur 500", "Ma page Prestashop est en erreur 404", "Prestashop me demande de mettre le mode debug", vous allez avoir ces réflexions au moins une fois dans la vie de votre site. Je vous explique comment débugger un Prestashop par vous-même ou comment renseigner votre développeur sur l'erreur.
Pour tout problème rencontré qu'il soit structurel ou fonctionnel, il faut réaliser ces actions avant même de consulter quelqu'un d'extérieur :
- Testez si l'erreur est présente en navigation privée, sur un autre navigateur voire même sur un autre terminal
- Notez le chemin par lequel vous êtes passé sur le site et l'action que vous avez effectuée au moment où le bug est survenu (une mise à jour d'un module, un changement de template, un changement de design, un changement de paramètre…)
- Observez ce qui ne marche pas, est-ce que toute la page est blanche ? Est-ce seulement une partie ?
- Notez les codes d’erreurs s’il y en a
Tous ces éléments vont aider à débugger que ce soit par vous-même ou en communiquant ces infos à un développeur.
Mon bug contient un code erreur
La plupart des bugs sont répertoriés et ont une signification. Ils concernent la plupart des sites quelque soit la plateforme (Prestashop, Drupal, Magento, WordPress...). Lorsque vous avez votre code erreur, copiez-le et collez-le dans votre moteur de recherche (Google par exemple). En général, la réponse à votre erreur sera dans les premiers résultats.
Si le code erreur est spécifique à un CMS, un module, une extension, une libraire que vous utilisez, n'hésitez pas à regarder la documentation fournie avec ou sur le site officiel de cet élément. S'il est avéré avec les méthodes ci-dessous et les codes d'erreurs analysés que le bug vient d'un module Prestashop, contactez les développeurs si votre support de module est encore actif.
Mon Prestashop ne marche pas côté front-office
Le front-office d'un site est la partie visible de tous les internautes. Il se peut qu'une seule page, qu'un type de page (catégorie, accueil, produit...) ou bien même que le site entier fasse page blanche et ne réponde plus . Voici quelques actions à entreprendre pour débugguer :
- Videz le cache en back-office en allant dans Paramètres Avancés ->Performance -> Videz le cache. Après certains changements de paramètres et parce que vous passez beaucoup de temps sur le site, il se peut que le cache retienne trop d'éléments et provoque une erreur. Le vider peut résoudre cette erreur.
- Pensez à votre dernière action, si celle-ci est réversible, revenez en arrière et observez si l'erreur est toujours là. Par exemple, j'ai activé un module, l'erreur survient, je désactive ce module pour voir si l'erreur est toujours présente.
- Vérifiez que votre capacité de stockage sur votre hébergement n'est pas saturée. Si vous ne savez pas comment faire, demandez à votre hébergeur ou demandez un diagnostic à La Zitounerie.
- Les sites internet contiennent des journaux d'informations et d'erreurs appelés des logs. Si vous avez accès à ceux-ci, lisez-les afin de voir s'il n'y a pas une indication de ce qui a causé l'erreur. Si vous avez un hébergement mutualisé, vos logs se trouvent sur votre compte d'hébergement. Si vous demandez de l'aide à un développeur, ces journaux d'erreurs lui seront utiles.
- Si vous avez un VPS, et non un hébergement mutualisé, il se peut qu'il y ait un problème de droits sur les fichiers que le site tente d'interroger. Faîtes diagnostiquer les droits par la personne qui gère votre hébergement afin qu'elle les rétablisse.
- Activez le mode Debug dans Paramètres Avancés -> Performances avec précautions. Celui-ci montrera tous les avertissements de code de votre site à tous les internautes, il est donc recommandé de mettre votre site en maintenance avant d'activer le mode Debug. Une fois ce mode activé, retournez sur la page concernée et observez le message d'erreur s'il y en a un. Le mode debug est en général utile lors d'une erreur de serveur (500).
Ma boutique Prestashop et son administration ne fonctionne plus
Il se peut que tout le site soit en erreur, aussi bien la partie administration que la partie boutique. Dans ce cas-là, il faut vérifier les choses suivantes :
- Regardez du côté de votre hébergeur s'il n'y a pas une mise à jour, des travaux ou une panne sur votre hébergement. Par exemple, l'hébergeur OVH a une page dédiée aux travaux de leurs serveurs. Si l'hébergeur entreprend des travaux, vous n'avez d'autres choix que d'attendre. Si cela dure plusieurs jours, en cas de gros incident, il est possible de demander à un développeur de remonter votre site sur un autre serveur avec vos dernières sauvegardes.
- Vérifiez que votre capacité de stockage sur votre hébergement n'est pas saturée.
- Analysez les journaux d'informations (logs) pour observer si une erreur apparaît.
- Pensez à la dernière action entreprise : ai-je modifier un bout de code ? ai-je installer un module ? ai-je toucher un paramètre ? Le site étant totalement en erreur, il ne sera pas possible de revenir en arrière par le back-office. Il faut activer le mode debug par le code et observer l'erreur en question. Sur votre FTP, rendez-vous dans le dossier config et modifier le fichier defines.inc.php. Il faut changer la ligne define('_PS_MODE_DEV_', false); par define('_PS_MODE_DEV_', true);.
- Est-ce que les fichiers de mon site sont toujours présents dans le FTP ? Est-ce que ma base de données est toujours bien remplie ? Certains programmes malicieux peuvent entrer sur votre site et en videz le contenu. Il se peut que ce soit la cause de votre bug.
Erreur 500 sur mon Prestashop
Une erreur 500 signifie que quelque chose passe mal au niveau du code côté serveur. Il se peut que le site interroge des données qui n'existent pas ou qui sont mal écrites, il s'arrête donc pour signaler son erreur. Celle-ci ne sera pas visible sans le mode debug. Reprenez donc les étapes 3 et 4 du point d'avant afin d'analyser l'erreur et en trouver la conséquence.
Erreur 404 sur mon site
Une erreur 404 quelque soit le CMS veut dire que la page n'existe plus sur la boutique, cela est mauvais pour le référencement d'un site. Elle a soit été supprimée, soit été désactivée mais surtout, son URL n'a pas été redirigée vers une autre page active. Les moteurs de recherche et les internautes n'aiment pas tomber sur une erreur 404, c'est pour ça qu'il vaut mieux rediriger l'URL en question vers une autre page du site. Cette page dans l'idéal doit être en lien avec l'ancienne page. Si la page d'un shampooing à l'orange est en 404, alors on la redirige vers la page d'un autre shampooing sur le site, voire même vers la catégorie des shampooings. Pour rediriger des URLs sur Prestashop, je vous conseille : Modules de redirections. Pour Worpress, je vous conseille celui-ci : Redirections.
Le site est compromis
Votre site n'est pas récupérable ? Pour pouvoir le remettre sur pied rapidement, il faut une sauvegarde des fichiers et une sauvegarde de la base de données. Avec ceci, n'importe quel développeur peut remettre le site sur un autre serveur, à condition que votre sauvegarde ne soit pas vérolée et qu'elle soit intègre.
Si vous êtes sur un hébergement mutualisé, certains hébergeurs proposent des sauvegardes quotidiennes de votre base de données. Il est recommandé de rapatrier ces sauvegardes sur votre ordinateur ou votre disque dur. Ainsi, si votre serveur tombe en panne, il est toujours possible de récupérer la base.
De même pour les fichiers du site, il est recommandé d'avoir une copie des fichiers sur votre ordinateur local par mois, voire par semaine.
A savoir que toutes les données entre l'heure de la sauvegarde du site et la panne seront perdues.
Que ce soit pour un diagnostic d'erreur, pour remonter un site à partir d'une dernière sauvegarde, pour réparer une erreur 500 ou d'autres travaux de débuggage, n'hésitez pas à contacter La Zitounerie et a expliquer votre problème. La Zitounerie est aussi disponible pour vous former à l'utilisation de modules.