Accueil / Wordpress / wp-config.php : optimiser et sécuriser WordPress

wp-config.php : optimiser et sécuriser WordPress

Le fichier de configuration wp-config.php est loin d’être optimisé après une installation de WordPress. Voyons ensemble quelques petites astuces permettant d’améliorer cela (si un jour j’ai le courage, j’effectuerai la version longue). Tout d’abord, il va falloir le récupérer. Wp-config.php se trouve à la racine de votre installation WordPress. Récupérez-le grâce à votre logiciel FTP et faites en une copie (on n’est jamais trop prudent). Maintenant, ouvrez votre éditeur de texte préféré et jouons un peu avec WordPress. On va configurer wp-config.php un peu plus convenablement.

Augmenter la taille de la mémoire

Dans un premier temps on va augmenter la taille de la mémoire pour aider WordPress à exécuter les requêtes que vous lui demandez. Pour cela, rajoutez dans le fichier wp-config.php :

define('WP_MEMORY_LIMIT', 'XM');

Avec X = 64, 96, 128 (etc…). Par défaut, la valeur est de 32M. WordPress ne pourra pas dépasser la valeur maximale qui est allouée par votre hébergement, donc autant mettre la mémoire maximale autorisée. Pour cela, on va créer un fichier qui donne cette information et l’appeler info.php.

Ouvrez le avec votre éditeur de texte préféré et insérez cette ligne :

<?php phpinfo() ?>

Ensuite, vous mettez ce fichier à la racine de votre site et vous aurez toutes les informations concernant votre PHP à l’adresse http://monsite.com/info.php. Vous n’avez plus qu’à mettre la valeur maximale de la mémoire. On pourrait aller plus loin pour l’administrateur, en lui donnant encore un peu plus de mémoire :

define('WP_MAX_MEMORY_LIMIT', 'YM');

et dans ce cas, bien entendu, on essaie de mettre Y ≥ X.

Les articles et leurs révisions

On va maintenant passer au scalpel le nombre de révisions (sauvegardes) d’un article, histoire de diminuer le poids de la base de données. On va insérer une nouvelle fois dans le fichier wp-config.php de nouvelles lignes de codes :

define('WP_POST_REVISIONS', 3 );
define('AUTOSAVE_INTERVAL', 180 );

La première ligne indique le nombre maximum de révisions d’un article (ici 3).

Les sauvegardes automatiques sont maintenant de 180 secondes.

Une corbeille vidée automatiquement

On va encore un peu plus loin, et on vide la corbeille automatiquement une fois par semaine :

define('EMPTY_TRASH_DAYS', 7 );

Code et Debug

Parfois WordPress bug (si, malheureusement) et par défaut l’option DEBUG est sur false ce qui signifie que les messages d’erreurs seront cachés. Pas terrible, surtout pour celui qui tente de coder un petit peu ou tout simplement après l’activation d’un paramètre (comme un plugin). Ainsi, il suffit de changer :

define('WP_DEBUG', false);

en :

define('WP_DEBUG', true);

On fige les URLs WordPress

Dans le panneau de contrôles de WordPress (Dashboard), on peut, dans l’onglet Réglages Généraux, mettre une Adresse web de WordPress et Adresse web du site.

Si vous êtes plusieurs admins (oui, ça peut sembler fou mais parfois une aide n’est pas de refus) ou si vous êtes coutumiers des petites fautes de frappe, voici un moyen très simple d’éviter de gros soucis. On va figer ces deux lignes et ainsi personne ne pourra changer les URLs via le panneau d’administration.

Insérez ces lignes de code :

define('WP_HOME', 'votre_URL');
define('WP_SITEURL', 'votre_URL');

Activer la cache

Les plugins de cache sont censés être capables de mettre la ligne ci-dessous mais par acquis de conscience, autant la mettre manuellement dans wp-config.php

define('WP_CACHE', true);

Ainsi, tous les plugins de caches fonctionneront.

Et on sécurise le fichier wp-config.php

On vient de voir que ce fichier est important et très sensible. Et les informations exprimées plus haut servent de bases (voir les liens plus bas pour des informations plus pointues). Il convient donc de protéger ce fichier autant que possible. Pour cela, autant utiliser le fichier .htaccess qui se trouve lui aussi à la racine de votre site ou blog WordPress. Ajoutez-lui ces lignes de code :

# Protect wp-config.php
<Files wp-config.php>
order allow,deny
deny from all
</Files>

Et voilà pour les bases de l’optimisation du fichier wp-config.php. Nous avons vu comment améliorer un peu votre configuration WordPress et comment sécuriser ce fichier.

Pour plus d’optimisations, je vous conseille l’excellent tutoriel sur le fichier wp-config.php (en anglais) de Daniel Pataki ou encore le codex de WordPress.

A propos de Camille Latouche

Dr. in Computational Chemistry, my field of research is the Coordination Chemistry (complexes, organometallics, clusters). I like spending my time writing web articles and reviewing TV series, movies and books. I am also the founder of http://avisdupublic.net