Comment résoudre l’erreur « Allowed memory size exhausted » dans WordPress
Lorsque vous êtes confronté à l’erreur fatale suivante dans WordPress :
Cela signifie que la mémoire allouée à PHP par votre serveur est insuffisante pour exécuter le script en question. Ce problème est fréquent et peut perturber les performances ou même rendre votre site inaccessible. Voici un guide complet pour comprendre, diagnostiquer et corriger cette erreur.
1. Pourquoi cette erreur se produit-elle ?
WordPress fonctionne en utilisant PHP, un langage de programmation côté serveur. Chaque script PHP nécessite une certaine quantité de mémoire pour s’exécuter. Par défaut, la mémoire allouée à PHP est souvent limitée (par exemple, 128 Mo ou 256 Mo). Si un script dépasse cette limite, l’erreur « memory exhausted » se produit.
Les causes courantes incluent :
- Thèmes ou plugins mal optimisés.
- Nombreux plugins actifs.
- Scripts complexes nécessitant plus de ressources.
- Opérations d’importation/exportation de données volumineuses.
2. Augmenter la limite de mémoire PHP
La solution la plus simple est d’augmenter la limite de mémoire allouée à PHP. Voici comment faire :
A. Modifier le fichier wp-config.php
- Accédez à la racine de votre site WordPress via FTP ou votre gestionnaire de fichiers.
- Ouvrez le fichier
wp-config.php
. - Ajoutez la ligne suivante avant la ligne « That’s all, stop editing! Happy blogging. » :
Cela augmente la limite de mémoire à 512 Mo. Vous pouvez ajuster cette valeur selon vos besoins.
B. Modifier le fichier php.ini
- Localisez le fichier
php.ini
sur votre serveur (souvent dans le dossierpublic_html
). - Recherchez la ligne suivante :
- Modifiez-la pour augmenter la limite, par exemple :
Si le fichier n’existe pas, vous pouvez en créer un et y ajouter cette ligne.
C. Modifier .htaccess
- Ouvrez le fichier
.htaccess
dans la racine de votre site. - Ajoutez la ligne suivante :
Note : Cette méthode peut ne pas fonctionner si votre serveur a des restrictions de configuration.
3. Identifier les plugins ou thèmes problématiques
Certains plugins ou thèmes consomment beaucoup de mémoire. Pour identifier le coupable :
- Désactivez tous les plugins :
- Accédez à votre tableau de bord WordPress.
- Allez dans Extensions > Extensions installées.
- Désactivez toutes les extensions.
- Réactivez-les une par une pour identifier celle qui cause l’erreur.
- Changez de thème :
- Passez à un thème par défaut comme Twenty Twenty-Three.
- Si l’erreur disparaît, le problème vient de votre thème actuel.
4. Optimisation de la base de données
Une base de données encombrée peut ralentir votre site et consommer plus de mémoire. Utilisez des plugins comme WP-Optimize pour :
- Nettoyer les révisions d’articles.
- Supprimer les commentaires indésirables.
- Optimiser les tables de la base de données.
5. Vérifiez la version de PHP
Assurez-vous que votre serveur utilise une version récente de PHP (7.4 ou supérieure). Les versions plus récentes offrent de meilleures performances et une gestion optimisée de la mémoire.
- Connectez-vous à votre hébergement.
- Accédez à la section PHP Manager.
- Mettez à jour vers la dernière version stable si nécessaire.
6. Consultez les logs d’erreurs
Pour un diagnostic approfondi, consultez les fichiers de journalisation (error_log
) dans le dossier racine. Ils peuvent fournir des informations précieuses sur le script ou le processus spécifique qui consomme trop de mémoire.
7. Contactez votre hébergeur
Si vous avez essayé toutes les solutions ci-dessus sans succès, contactez votre fournisseur d’hébergement. Certains hébergeurs imposent des limites strictes sur l’allocation de mémoire. Ils peuvent vous aider à :
- Ajuster les paramètres côté serveur.
- Migrer vers un plan d’hébergement offrant plus de ressources.
8. Prévention future
- Mettez régulièrement à jour WordPress, vos plugins et vos thèmes.
- Utilisez des plugins bien codés et reconnus.
- Évitez de surcharger votre site avec des fonctionnalités inutiles.
- Activez la mise en cache (par exemple, avec W3 Total Cache ou WP Super Cache) pour réduire la charge sur votre serveur.
Conclusion
L’erreur « Allowed memory size exhausted » peut sembler intimidante, mais elle est généralement facile à résoudre en augmentant la mémoire PHP et en optimisant votre site. En suivant les étapes ci-dessus, vous pouvez restaurer l’accès à votre site WordPress et éviter que le problème ne se reproduise. Si vous rencontrez des difficultés persistantes, n’hésitez pas à consulter un développeur WordPress ou à solliciter l’aide de votre hébergeur.