Fatal error: out of memory en mettant à jour WordPress

Publié dans Wordpress | Marqué avec , ,
Share

Cette erreur lors d’une mise à jour de WordPress a déjà été reporté sur des dizaines de blogs, mais histoire d’être sûr que l’astuce salvatrice soit bien transmise, je vais aussi m’en faire le porte parole !

Quelle est l’erreur ?

En essayant d’installer une nouvelle version de Wordpres, le bien aimé CMS vous sort au bout de quelques instants une erreur du genre : Fatal error: out of memory

Cela signifie que vous n’avez pas assez de mémoire pour faire cette mise en jour ! En partie parce que WordPress est un gros machin, et aussi parce que votre WordPress supporte surement une bonne dose d’extensions, je me trompe ?

Problèmes de mémoire ?

Il est facile de visualiser ce problème grâce à l’extension WP Memory Usage qui vous permet de voir le pourcentage de mémoire utilisé par WordPress. Aux alentours de 60%, WordPress n’a généralement plus assez de mémoire pour supporter la surcharge d’utilisation lors de la mise à jour.

Peu importe le numéro de version de la mise à jour, ça le fait depuis un certain temps que ça dure… J’ai lu je ne sais où que les développeurs WordPress sont conscient de ce problème et tentent de trouver une solution pour les versions à venir.

Solution 1 : augmenter la mémoire disponible

Trois solutions s’offrent à vous de la meilleure à la moins bonne, selon vos possibilités… Vos hébergements ne vous permet peut-être pas de modifier la mémoire disponible, et il peut aussi vous astreindre à un certain plafond. L’hébergeur 1&1, par exemple, limite la mémoire à 32M quoi que l’on configure (voir la FAQ).

  • En créant/modifiant un fichier php.ini dans le dossier wp-admin (et potentiellement dans le dossier racine de votre installation WordPress si vous avez ce problème ailleurs que dans l’administration)
    • Dans ce fichier, ajoutez: memory_limit = 8M et essayez. Sinon recommencez avec 12M, 40M, …
  • Si vous ne pouvez créer/modifier php.ini, peut-être pouvez-vous créez un fichier .htaccess dans ce dossier wp-admin… Dans ce cas là, ajoutez-y : php_value memory_limit 8M ou 12M, ou … (cela ne marche vraisemblablement pas sur les hébergements 1&1 : FAQ)
  • Sinon, tentez d’ajouter une ligne en haut du fichier wp-admin/update-core.php : ini_set('memory_limit', '8M') ou …

Si cela ne fonctionne pas, c’est que votre hébergement ne vous permet de modifier la mémoire disponible, ou en tout cas, pas suffisamment.

Solution 2 : retirer temporairement les extensions

Ce problème est certainement dû à une extension un peu lourde. Vous pourriez donc désactiver un à un toutes extensions pour trouver la fautive… mais une solution plus efficace consiste :

  • à renommer le dossier wp-content/plugins en wp-content/plugins_old
  • à effectuer la mise à jour
  • si ça marche, à renommer le dossier wp-content/plugins créé (tout du moins, il y a de grandes chances qu’il soit recréé) wp-content/plugins_new par sécurité
  • de renommer wp-content/plugins_old en wp-content/plugins
  • puis si après quelques temps vous êtes sûr que tout va bien, vous pouvez supprimer wp-content/plugins_new

Il existe une troisième solution alternative à celle-ci.

Solution 3 : installer la version anglaise

Généralement ce problème a plutôt lieu avec une version traduite… Alors tentez donc d’installer la version anglaise, en théorie plus légère ! Vous pourrez ensuite utiliser une extension permettant de traduire votre WordPress (par exemple Code Styling Localization) pour corriger les 2-3 mots qui auront changé.

Cela a fonctionné pour moi avec la version 3.2, mais pas avec la version 3.3.

Bon, j’espère que vous trouverez une solution à votre problème parmi les trois solutions ci-dessus ! Bon courage !

D’autres sites qui en parlent

5 réponses à Fatal error: out of memory en mettant à jour WordPress

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*