Le Blog

Bug Prestashop récent – page blanche sur le back-office


Depuis quelques jours, un bug se déclenche sur de nombreux sites Prestashop rendant l'accès à la page de connexion du back-office impossible.

L'activation du mode debug peut déclencher l'affichage de 2 erreurs que j'ai pu constater jusqu'à présent :

  1. Fatal error: Class 'AdminLoginController' not found in /classes/controller/Controller.php on line 135
  2. Fatal error: Class 'PrestaShopAutoload' not found in /config/autoload.php on line 31

L'élément qui déclenche ces erreurs vient tout simplement du fait que le contenu d'un fichier PHP ai été intégralement vidé.

Au sujet de la première erreur, si vous analysez le contenu du dossier /controllers/admin/ vous constaterez que le fichier AdminLoginController.php pèse 0 ko, son contenu a été vidé. Il est donc nécessaire de télécharger l'archive d'origine de la même version Prestashop que celle qu'utilise votre site et de remettre en place ce fichier pour corriger le problème.

Pour ce qui est de la 2ème erreur, si vous analysez le contenu du dossier /classes/ vous constaterez que le fichier PrestaShopAutoload.php pèse 0 ko, son contenu a été vidé. Il est donc nécessaire de suivre la même opération que pour la première erreur en téléchargeant l'archive d'origine de la même version Prestashop que celle qu'utilise votre site et de remettre en place ce fichier.

L'origine du problème m'est encore inconnue à l'heure ou j'écris ces lignes mais je vais m'intéresser à l'observation des logs serveurs sur les machines auxquelles j'ai accès afin d'essayer d'en savoir plus sur ces erreurs qui se déclenchent sur plusieurs sites depuis très peu de temps.

Complément d'information - 14/12/2016

Pour éviter que le contenu du fichier soit à nouveau vidé, j'ai modifié les droits du fichier depuis une connexion FTP afin de retirer tous les droits en écriture, pour l'instant le correctif tient en place.

7 Commentaires

  1. Khalid-Répondre
    13 décembre 2016 à 18 h 30 min

    Merci pour l’article !
    Mon cousin a eu le même problème sur sa boutique en ligne, le fichier AdminLoginController.php a été vidé.
    Merci encore.

    • ERALION-
      13 décembre 2016 à 19 h 20 min

      Ravi d’avoir pu vous aider, cependant le problème va revenir. Sur les sites où j’ai pu constater le soucis le problème est revenu après plusieurs minutes/heures, je cherche donc encore l’origine du problème pour stopper ce processus.

  2. layli-Répondre
    5 janvier 2017 à 20 h 02 min

    Bonjour malgres la manip cela ne fonctionne pas

    • ERALION-
      5 janvier 2017 à 21 h 14 min

      Bonsoir, je vous ai contacté par mail afin d’essayer de vous aider sur le problème rencontré.

  3. GRAIN Philippe-Répondre
    27 juillet 2017 à 9 h 32 min

    Bonjour,
    Je découvre votre blog ce matin (bravo!) et notamment cet article qui parle des problèmes de connexion à l’admin.
    Mon problème est légèrement différent : en 1.6 quand j’ai quitté le backoffice sans me déconnecter (par inattention) la fois suivante en me connectant j’arrive sur une page où il n’y a que les logo presta dans une boîte.
    Je sais qu’en virant les cookies le problème est réglé, mais y-a-t-il une solution plus élégante?
    Merci.

    • ERALION-
      4 août 2017 à 12 h 32 min

      Bonjour, c’est un problème que j’ai déjà pu observer sur le site de certains clients mais je n’ai jamais été missionné pour le réparer jusque là encore et n’ai donc malheureusement pas de solution dans l’immédiat à proposer.

  4. 8 juillet 2018 à 13 h 58 min

    Merci beaucoup, en effet le fichier AdminLoginController.php était vide, j’ai remis celui qui était avant, et ca remarche ! 🙂
    Etrange bug et sans l’aide du site eralion je serais encore en train de chercher , merci beaucoup 🙂

Commenter l'article