Outils pour utilisateurs

Outils du site


informatique:programmation:wordpress:deplacer_le_fichier_config.php

Déplacer Le Fichier Config.php

Date de création : 2021/06/11 09:19

 

Cette page a pour source partielle ou intégrale la ou les page(s) suivante(s):

Bon ok a première vue ou est l’intérêt de déplacer le fichier config.php de Wordpress. C'est très simple: si quelqu'un arrive à le lire pour X raison il a accès à tous les codes important de votre site:

  1. nom de la base de donnée
  2. mot de passe de la base
  3. préfixe des tables
  4. Clés uniques d’authentification
  5. etc….

alors bon ok cela ne va pas servir à tout le monde mais pour avoir déjà été Hacker je peux dire que on ne si attend pas toujours.

Donc pour réduire se genre de situation ou une autre personne prend le control de votre site il suffit de faire quelques réglages simple mais efficaces. donc on va déplace le fichier config.php dans un dossier qui n'a pas d'accès depuis le web.

Prés requis

  1. avoir l'accès FTP
  2. avoir un site Wordpress ( cela peut être utile par la suite…)

On commence

on commence par se connecter sur son ftp qui devrais ressembler à cela:

📦monWordpress
 ┣ 📂wp-admin
 ┣ 📂wp-content
 ┣ 📂wp-includes
 ┣ 📜index.php
 ┣ 📜license.txt
 ┣ 📜readme.html
 ┣ 📜wp-activate.php
 ┣ 📜wp-blog-header.php
 ┣ 📜wp-comments-post.php
 ┣ 📜wp-config-sample.php
 ┣ 📜wp-config.php
 ┣ 📜wp-cron.php
 ┣ 📜wp-links-opml.php
 ┣ 📜wp-load.php
 ┣ 📜wp-login.php
 ┣ 📜wp-mail.php
 ┣ 📜wp-settings.php
 ┣ 📜wp-signup.php
 ┣ 📜wp-trackback.php
 ┗ 📜xmlrpc.php

donc la manœuvre va consister à déplacer le fichier config.php hors des dossiers accessible depuis le web, pour cela nous avons deux chois possibles:

1° méthode

Le plus simple est de remonter d'un niveaux le fichier, Wordpress intègre directement cette fonctionnalité de sécurité. Nous arrivons donc à une arborescence comme celle-ci :

 ┃ ┣ 📜wp-config.php <= nouvel emplacement
 ┃ ┣ 📦monWordpress
 ┃ ┃ ┣ 📂wp-admin
 ┃ ┃ ┣ 📂wp-content
 ┃ ┃ ┣ 📂wp-includes
 ┃ ┃ ┣ 📜index.php
 ┃ ┃ ┣ 📜wp-config-sample.php
 ┃ ┃ ┣ 📜wp-cron.php
 ┃ ┃ ┗ 📜 ...

2° méthode

Cette méthode est un petit peu plus poussée, imaginons que vous avez plusieurs site worpdress sur votre hébergement et vous voulez centraliser tout vos fichiers configuration dans un même dossier pour simplifier des sauvegardes ou pour tout simplement éloigner un peu plus le fichier config.php de votre site.

Il est possible de déplacer un peu plus loin notre fichier, pour cela on va prendre une arborescence plus grande genre :

 ┣ 📂monHebergement
 ┃ ┣ 📂monSiteWeb
 ┃ ┃ ┣ 📦monWordpress
 ┃ ┃ ┃ ┣ 📂wp-admin
 ┃ ┃ ┃ ┣ 📂wp-content
 ┃ ┃ ┃ ┣ 📂wp-includes
 ┃ ┃ ┃ ┣ 📜wp-config-sample.php
 ┃ ┃ ┃ ┣ 📜wp-config.php
 ┃ ┃ ┃ ┗ 📜 ...

Et pour faire les chose en mode parano on veut le mettre dans un dossier monDossierParano à la racine de mon herbergement.

Genre:

 ┣ 📂monHebergement
 ┃ ┣ 📂monDossierParano
 ┃ ┃ ┗ 📜config.php             <= ICI
 ┃ ┣ 📂monSiteWeb
 ┃ ┃ ┣ 📦monWordpress
 ┃ ┃ ┃ ┣ 📂wp-admin
 ┃ ┃ ┃ ┣ 📂wp-content
 ┃ ┃ ┃ ┣ 📂wp-includes
 ┃ ┃ ┃ ┣ 📜wp-config-sample.php
 ┃ ┃ ┃ ┣ 📜wp-config.php
 ┃ ┃ ┃ ┗ 📜 ...

Donc on va modifier le fichier config.php dans Wordpress pour le faire pointer vers un autre emplacement: avec votre logiciel FTP enregistrer le fichier config.php sur votre ordinateur a deux endroits :

  1. un pour avoir une sauvegarde de l'original.
  2. un que l'on va modifier et renvoyer sur le FTP dans le dossier wordpress.

Modification du fichier config.php dans Wordpress

par défaut votre fichier resemble à cela :

<?php
/**
 * La configuration de base de votre installation WordPress.
 *
 * Ce fichier est utilisé par le script de création de wp-config.php pendant
 * le processus d’installation. Vous n’avez pas à utiliser le site web, vous
 * pouvez simplement renommer ce fichier en « wp-config.php » et remplir les
 * valeurs.
 *
 * Ce fichier contient les réglages de configuration suivants :
 *
 * Réglages MySQL
 * Préfixe de table
 * Clés secrètes
 * Langue utilisée
 * ABSPATH
 *
 * @link https://fr.wordpress.org/support/article/editing-wp-config-php/.
 *
 * @package WordPress
 */
 
// ** Réglages MySQL - Votre hébergeur doit vous fournir ces informations. ** //
/** Nom de la base de données de WordPress. */
 
Blabla Bla
Blabla Bla 
Blabla Bla 
Blabla Bla 
Blabla Bla 
 
/* C’est tout, ne touchez pas à ce qui suit ! Bonne publication. */
 
/** Chemin absolu vers le dossier de WordPress. */
if ( ! defined( 'ABSPATH' ) )
  define( 'ABSPATH', dirname( __FILE__ ) . '/' );
 
/** Réglage des variables de WordPress et de ses fichiers inclus. */
require_once( ABSPATH . 'wp-settings.php' );

La vous effacez tout et vous collez ceci :

if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
require_once(dirname(dirname(dirname(__FILE__))) . '/monDossierParano/wp-config.php');
?>

Ok explication de la manipulation:

require_once dit au script de charger le fichier wp-config.php qui se trouve dans le dossier monDossierParano mais comment on y arrive ?

très simplement, à chaque dirname on remonte d'un dossier, donc cela se traduit comme ceci:

 ┣ 📂monHebergement                  <- dirname 3
 ┃ ┣ 📂monDossierParano
 ┃ ┃ ┗ 📜config.php
 ┃ ┣ 📂monSiteWeb                    <- dirname 2
 ┃ ┃ ┣ 📦monWordpress                <- dirname 1
 ┃ ┃ ┃ ┣ 📂wp-admin
 ┃ ┃ ┃ ┣ 📂wp-content
 ┃ ┃ ┃ ┣ 📂wp-includes
 ┃ ┃ ┃ ┣ 📜wp-config-sample.php
 ┃ ┃ ┃ ┣ 📜wp-config.php
 ┃ ┃ ┃ ┗ 📜 ...

require_once( dirname3 ( dirname2 ( dirname1 ( _FILE_ )))

  • Le 1° dirname on est dans le dossier monWordpress,
  • le 2° dirname on passe dans monSiteWeb,
  • le 3° dirname on arrive dans monHebergement

arrivé ici c'est '/monDossierParano/wp-config.php' qui prend le relais pour dire maintenant que tu es dans le dossier /monHebergement va dans le dossier /monDossierParano et choisi le fichier wp-config.php

Bien faire attention au nombre de parenthèses :

require_once(dirname(dirname(dirname( _FILE_ ))) . '/monDossierParano/wp-config.php');

Dans cet exemple il y a 3 dirname donc 4 parenthèses avant _FILE_

donc il doit y avoir 4 parenthèse après _FILE_ en sachant que la dernière est à la fin de la ligne juste avant le point virgule.

Par commodité d'affichage et pour évite un soucis de signalétique,

dans dokuwiki on met deux underscores pour souligne un mot :

__Soulignage__

donne Soulignage .

donc dans l'exemple, je ne mets qu'un underscore autour de FILE mais il en faut bien 2

__FILE__

Voila pour la première partie.

Modification du fichier config.php hors de Wordpress

Maintenant il faut mettre dans notre nouveau dossier monHebergement/monDossierParano le fichier config.php original que l'on à sauvegarder au début

et euh ben en fait c'est tout, on a fini.

Normalement votre blog devrait fonctionner normalement.

Si vous avez un problème, à tout moment il suffit de remettre dans le dossier Wordpress le fichier config.php orignal et on revient à la configuration d'origine après avoir rafraîchit la page.

informatique/programmation/wordpress/deplacer_le_fichier_config.php.txt · Dernière modification: 2021/06/11 10:58 de bmc