WordPress Assistance : Augmenter la limite maximale de mémoire WordPress

Grosse crise aujourd’hui encore, je bosse sur un site WordPress hébergé chez un hébergeur dès plus ingrat : impossible de joindre le service technique et client et la version PHP à disposition est la 5.5. Et bien entendu impossible de l’upgarder alors que l’on est déjà à la version 7.0 chez d’autres hébergeur !

 
Pourquoi je te dis ça ? Mandaté par un client, je travaille directement sur l’hébergement (pas en local du coup). Ce dernier souhaite utiliser un template premium et y ajouter des fonctionnalités spécifiques, c’est son choix. Du coup je crée la base de données, j’installe WordPress, je fais ma routine… une fois que le site est en ligne et fonctionnel, je télécharge le template Premium et son Child Theme, j’active.

Ça semble marcher mais en regardant les Systems Status de plus près, j’ai vu ça :

  • 1 – PHP Max Input Vars: 1000
  • 2 – WP Memory Limit: 256MB
  • 3 – PHP Time Limit: 30

wordpress system status

Bref l’environnement WordPress et PHP est au plus bas et moi ce que je veux c’est ça :

Voici ce que j’ai testé pour aboutir à de meilleures performances… en conclusion, je te dis ce que j’ai vraiment fais.

Attention : les méthodes présentées ci-dessous sont des méthodes courantes et approuvées. Mais toutefois sache que ça peut marcher ou pas suivant les cas. C’est à dire que ça va dépendre en majeure partie des restrictions imposées par ton hébergeur. Du coup si ton hébergeur est tout cheap avec trop de restrictions, la meilleure solution est de changer d’hébergeur sur le champ ! Je ne te conseille même pas d’upgrader.
 
Du coup, y a pas 36 solutions mais y en a plusieurs, allez on enfile son pyjama, on retrousse les manches et on est parti pour augmenter la limite maximale de mémoire WordPress.
 

1 – PHP Max Input Vars : créer un fichier php.ini

 
Le PHP Max Input Vars limite le nombre de variables d’entrée, cette limitation affecte les variables $ _GET, $ _POST et $ _COOKIE. Du coup ça peut affecter les différentes actions et procédures d’installation.

Crée un fichier avec un éditeur de texte, nomme-le php.ini. Puis copie/colle le code suivant :
 
php_value max_input_vars 3000
 

Sauvegarde le fichier.

Télécharge-le dans ton FTP, à la racine de tes dossiers.

Reviens sur ton site WordPress rafraîchis-le et check si on a franchi les 3000 ou rien à changer. De mon côté rien n’a changé.

Si cela ne fonctionne pas ou même ça te sort une erreur. Contacte le service technique de ton hébergeur pour avoir plus de renseignement sur le sujet. Et retire le fichier php.ini pour ne pas s’encombrer.


2 – WP Memory Limit : ajouter 2 lignes de codes dans ton fichier wp-config.php

 
Juste une chose avant de se lancer : essaie de savoir en amont du côté de chez ton hébergeur, la limite de mémoire PHP mise à disposition. Si la limite est inférieure à 32 Mo, autant te dire que ton site WordPress va ramer dans ces actions de chargement, de mises à jour…

D’après le codex WordPress, la procédure est la suivante :

wordpress codex

Connecte-toi à ton client FTP, et rechercher dans le dossier racine le fichier wp-config.php. Une fois trouvé, clic droit et afficher/éditer.
ftp wp config

Une fois ouvert, copie et colle les 2 lignes de code ci-dessous, à partir de la ligne 61 dans le fichier .wp-config.php qui s’est ouvert.
 
define(‘WP_MEMORY_LIMIT’, ‘256M’);
define(‘WP_MAX_MEMORY_LIMIT’, ‘512M’);
ftp memory limit

Enregistre ton fichier, puis valide en pressant le bouton bleu OK.

Va sur ton site rafraîchis la page et regarde le changement de limite sur tes Status. On est passé de 256M à 512M.

Au moins ça c’est validé.


3 – PHP Time Limit: (re)crée un dossier php.ini et joue avec ton .htaccess

 
Avant de te lancer dans cette manipulation va voir ce qu’en dise tes conseillers techniques si comme moi tu n’arrives toujours pas à les joindre. Suis les conseils.
 
Le PHP Time Limit est la durée que ton site passe sur une seule opération avant d’expirer. Dès qu’une action atteint la limite de temps définie, elle renvoie une Fatal Error. Un message comme ceci apparaît : « Fatal error: Maximum execution time of 30 seconds exceeded. »
 
Voici la procédure à exécuter d’après les codex de WordPress.org :
 
https://codex.wordpress.org/Common_WordPress_Errors#Maximum_execution_time_exceeded
Tiens je te partage la screenshot. J’ai tenté à plusieurs reprises de faire l’action et à ça me pète une Internal Error ou erreur 500.

Premièrement, dans le fichier .htaccess situé à la racine de ton ftp, colle ce code ci : max_execution 300 et sauvegarde.

Note : dans le fichier .htaccess colle ton code avant :
# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Deuxièmement, édite ou crée un nouveau fichier php.ini et viens y coller le code suivant : max_execution_time = 300 puis sauvegarde

De mon côté rien à bouger.

 

Conclusion

 
Seule l’action WP Memory Limit a fonctionné, le reste n’a pas été concluant. De plus à ce jour je n’ai pas eu de retour de l’hébergeur. Impossible donc travailler dans ces conditions. J’ai donc migrer mon site chez un autre hébergeur. Et j’ai enfin eu tous les bugs réparés simplement en souscrivant à une offre bien moins chère.

wordpress php status

Et c’est ainsi que se termine ce WordPress Assistance : Augmenter la limite maximale de mémoire WordPress. Cheers


D'autres tutos & posts sont à ta dispo :

J'aime partager les apps et les tools que j'utilise au quotidien. J'écris des tutos & des posts qui t'aideront, je l'espère, à faire des trucs tranquillement que tu sois en pyjama dans un Starbucks ou en costume dans ta chambre.

Aucun Commentaire

Poster un commentaire

Ce site utilise Akismet pour réduire les indésirables. Apprenez comment les données de vos commentaires sont utilisées.