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

19 Commentaires

  1. Pour votre info le false dans debug n’est plus supporter et affiche la ligne 3508
    trigger_error( sprintf( __(‘%1$s was called with an argument that is deprecated since version %2$s! %3$s’), $function, $version, $message ) );
    else
    de wp-includes / fonctions.php

    le reste est OK. Merci

    • Bonjour Annie,
      Merci de ce retour. Avez-vous une source concernant le non support de WP_Debug ?

      • c’est la ligne s’est inscrite dans le haut de toutes les pages côté admin (c’est un site de vente avec woocommerce, si jamais cette info pouvais vous être utile ?)

        • Rebonjour Annie,

          Je ne suis pas spécialiste à ce niveau. Cependant, je le comprends comme un message de warning disant qu’il y a une fonction obsolète (un peu de lecture ici et )

          De plus, cette partie de WP-config est très superflue si vous ne codez peu ou pas. Cela dit, vous pouvez compléter avec le codex

          • 1- le mettez vous en true sur votre site ? ainsi on aurait une info sup.
            2- les liens que vous indiquez finalement disent la même chose que ce que j’ai constaté.
            de plus il me semble que c’est un truc que j’avais fait ya un bail sur un autre site… donc j’étais un peu sur mes gardes, je n’avais aucun souvenir des résultats, mais ai aussitôt pensé que le problème venait de là.

          • Bonsoir Annie,

            Pour le 1, pour l instant non. A l occasion je le ferai.
            Pour le 2, j e prends bonne note. Je testerai à l’occasion sur avisdupublic.net.

            A bientôt

          • Bonjour,
            il ne faut activé la fonction debug seulement si on a un souci, dans le codex, il l’indique bien, ils le déconseille sur les sites en activités.

          • Bonjour @noaneo:disqus,

            Oui, c’est le principe d’un debug mais tu fais bien de le rappeler.

            A bientôt,

          • Bonjour,
            peut être juste le préciser dans votre article, bien le désactiver, bien remettre false dans le code après résolution du problème

  2. Bonjour,
    Je suis chez OVH.
    En copiant wordpress via filezilla, je me suis aperçu qu’il n’y a pas de .htaccess à la racine du site…
    Faut-il le créer via un editeur de texte avec l’unique code que vous indiquez ?
    Merci.
    P.S. Merci pour cet article très intéressant !

    • Bonjour Mathieu,
      Merci du passage et du commentaire.
      Le fichier .ovhconfig n’a rien avoir avec la choucroute 😉
      En théorie, le .htaccess est crée automatiquement si WordPress a les droits.
      Pour les solutions je vois plusieurs possibilités, mais n’étant pas un pro, je ne peux rien te garantir :
      1°) par les menus
      a) Dans options, puis Permaliens ==> par défaut
      b) sauvegarder
      c) reselectionner le type de permaliens souhaitées
      d) sauvegarder

      2°) créer ton propre .htaccess avec lies lignes :
      # BEGIN WordPress

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

      # END WordPress

      Et tu le mets à ta racine.

      Plus d’informations sur le .htaccess sont ici et

  3. In that single player game, a farmer is required to target the pigs coming from different rides and distances. Due to, he is supplied with the bucket associated with 25 footballs. The exact points of the player depend upon the distance around ball and flagstick. You will find a pair of versions found in the following game instructions amateur and even specialized.

  4. Except for misplaying the actual puck driving his web a couple of times, Mrazek could not show almost any indications of spirit within the very first playoff match. He said following a success that seeing that numerous shots premature (10 inside the very first period) made way for him to settle with and start with his or her cycle. And once the very Lightning worn out a massive press within the thirdly time period, Mrazek created 19 spares.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *