WordPress tourne sur votre serveur et la plupart de son temps il exécute des scripts en réponse aux demandes que vous et vos visiteurs lui adressez. Celles-ci peuvent être des uploads de fichiers (images, vidéos, thèmes, plugins etc.). Dans ce cas vous pourriez recevoir l’erreur :
The uploaded file exceeds the upload_max_filesize directive in php.ini
Tous ces fichiers et scripts sont contenus dans la mémoire de votre serveur. Lorsqu’il y en a trop qui y cohabitent simultanément, la limite est atteinte et vous recevez une erreur comme :
Fatal error: Allowed memory size of 3456789 bytes exhausted (tried to allocate 2345678 bytes) in /home/example-com/public_html/wp-includes/plugin.php on line 1234
La solution à ces erreurs est de rehausser la quantité de mémoire allouée à WordPress. Dans cet article, je vous montrerai 4 méthodes pour augmenter la limite maximale de mémoire de WordPress.
1ère méthode : Modifier le fichier php.ini
Si vous utilisez cPanel, dans la section Fichiers, cliquez sur Gestionnaire de fichiers. Assurez vous que la case « Montrer les fichiers cachés » (fichiers points) est cochée ensuite cliquez sur le bouton « Aller ».
Dans l’arborescence des fichiers sur la gauche sélectionnez votre dossier wp-admin et localisez un fichier nommé php.ini ou php5.ini. Ouvrez-le et ajoutez ou modifiez les valeurs ci-dessous. Si vous ne le voyez pas, créez-en un. Pour cela cliquez sur le lien « Nouveau Fichier », nommez le php.ini ou php5.ini. Ouvrez le fichier et ajouter les lignes suivantes :
upload_max_filesize = 1000M
post_max_size = 2000M
memory_limit = 3000M
file_uploads = On
max_execution_time = 180
Le « M » après les valeurs signifie Méga octets. Changez les valeurs selon ce que vous pensez être le mieux adapté pour votre besoin. La valeur max_execution_time représente le temps maximal de chargement d’un script. Notez quand même qu’en général upload_max_filesize (taille maximum d’un fichier à uploader) doit être la plus petite valeur, memory_limit (mémoire totale allouée à un script) la plus grande et post_max_size (taille maximale des données d’une requête de type post) le juste milieu.
2ème Méthode : Modifier votre fichier .htaccess
Si vous n’avez pas eu de succès avec le fichier php.ini essayez avec le fichier .htaccess en ajoutant ou éditant les lignes en fin de fichier :
php_value upload_max_filesize 1000M
php_value post_max_size 2000M
php_value memory_limit 3000M
php_value max_execution_time 180
php_value max_input_time 180
Le principe est le même que pour votre fichier php.ini. Enregistrez vos modifications et videz le cache de votre navigateur.
3ème Méthode : Modifier votre fichier wp-config.php
Avant de penser que vous avez la poisse, essayez de modifier votre fichier wp-config.php en ajoutant ceci à la fin :
define('WP_MEMORY_LIMIT', '3000M');
Souvenez-vous, le principe est toujours le même. Remplacez 3000 par votre valeur. Enregistrez vos modifications et videz le cache de votre navigateur.
4ème Méthode : Modifier les valeurs dans votre WHM
Si vous êtes hébergés sur un VPS (Serveur Virtuel Privé) ou un serveur dédié, vous pouvez changer les valeurs dans votre WHM (Web Hosting Manager = Gestionnaire d’hébergement Web).
Après vous être authentifié, rendez-vous sur Server Configuration > Tweak Settings. Sous l’onglet PHP, entrez les valeurs qui vous conviennent et cliquez sur le bouton Save.
Puis dans Service Configuration > PHP Configuration Editor modifiez les valeurs memory_limit et upload_max_filesize à votre convenance.
Enfin, dans la section Options & Information repérez et modifiez la valeur max_execution_time. Cliquez sur le bouton Save en bas de page.
Voilà tout pour cet article sur les méthodes par lesquelles vous pouvez résoudre les problèmes liés aux limitations de mémoire sur votre serveur et à WordPress. Avez vous déjà rencontré ces problèmes ? Connaissez vous d’autres solutions ? Partagez-les avec nous dans la section des commentaires.
bonjour Cher très bon tutoriel, allez-y, je vous félicite c’est juste ce que je cherchais, je programme avec logique et les valeurs que vous avez données sont extrêmement bonnes. Très reconnaissant de rencontrer votre tutoriel!
C’est vraiment n’importe quoi vos tutos!! le fichier php.ini je rentre les valeur que vous dite sur votre site il me dise ‘=’ syntaxe error donc je mets le double == et maintenant c’est le M qui pose problème puis quand j’enlève le M il me dise syntax error, unexpected ‘post_max_size’ (T_STRING) ! Bref quoi que je fasse y’a des erreur!!! Pute à clic votre article cela ne fonctionne même pas !!
Bonjour nico,
C’est quand même curieux, vous voulez recevoir de l’aide et au lieu de la demander calmement pour comprendre pourquoi ça ne marche pas, vous passez directement aux insultes. Personne ne vous a invité sur notre blog et des dizaines de milliers d’utilisateurs y trouvent des solutions tous les jours.
Bref, Bonne chance pour suite.