WordPress Avancé
À propos de la leçon

Visite guidée du fichier wp-config.php de WordPress

Le fichier le plus important de l’ensemble de votre installation WordPress est wp-config.php. Votre site Web WordPress est composé de deux éléments: une base de données WordPress et vos fichiers WordPress.
wp-config.php est le   un élément qui relie la base de données et les fichiers ensemble.

Dans ce tutoriel, nous allons couvrir:

  • Où vous pouvez localiser votre fichier wp-config.php.
  • Ce que chaque ligne affecte et les paramètres communs.
  • Comment utiliser wp-config.php pour améliorer la sécurité de votre site Web

On commence par une sauvegarde …

Peu importe que vous utilisiez WordPress depuis 5 minutes ou 5 ans, effectuez toujours une sauvegarde avant de commencer à modifier des fichiers. Comme pour toutes les modifications majeures apportées à un site Web, il est préférable d’implémenter vos modifications sur un site Web test avant de les appliquer à un site Web en direct.

Attention: comme indiqué dans le codex WordPress, les lignes de code dans votre fichier wp-config-sample.php (et donc votre fichier wp-config.php) sont dans un ordre spécifique. L’ordre est important. Veuillez noter que la réorganisation des lignes de code dans ce fichier peut créer des erreurs.

Le fichier wp-config-sample.php

Curieusement, ce fichier extrêmement important n’existe pas dans la copie téléchargée de WordPress. Au lieu de cela, vous recevez un fichier wp-config-sample.php dans le package de téléchargement et WordPress vous donne la possibilité de créer un fichier de configuration (c’est-à-dire votre fichier wp-config.php) dans le cadre de l’installation.

Comme la plupart des utilisateurs normaux choisissent de cliquer sur le bouton “Créer un fichier de configuration” pour créer leur fichier wp-config.php, la majorité n’aura pas vu à quoi ressemble l’intérieur de ce fichier.

Pour ce faire, vous aurez besoin d’un identifiant FTP (vous pouvez l’obtenir auprès du créateur de votre site Web ou de votre hébergeur) et d’un client FTP, tel que FileZilla.

Emplacement par défaut du fichier wp-config.php

Par défaut, ce fichier réside dans votre dossier / public_html, avec tous vos autres fichiers et dossiers WordPress (comme indiqué dans la capture d’écran de FileZilla ci-dessus).

  • Pour une configuration normale, l’emplacement serait: public_html / wp-config.php
  • Pour un sous-répertoire, l’emplacement serait: public_html / sous-répertoire / wp-config.php

L’emplacement sécurisé de votre fichier wp-config.php

Si vous avez fait votre devoir de sécurité, vous aurez probablement déjà déplacé votre fichier wp-config.php d’un niveau et en dehors du dossier / public_html. Cela met votre important fichier wp-config.php hors de portée, et (plus important encore) hors de la portée des pirates potentiels.

Remarque importante pour les sous-domaines: Si vous avez un sous-domaine, déplacer le fichier wp-config.php d’un niveau supérieur ne le retirera pas du dossier / public_html. Vous voudrez peut-être rechercher une solution plus personnalisée, telle que le déplacement de la majorité des paramètres de votre fichier wp-config dans un fichier totalement différent, qui est ensuite appelé par une instruction “include” dans le fichier wp-config.php.

Si vous ne l’avez pas déjà fait, il est temps de déplacer ce fichier important hors du dossier public_html et de le placer dans un lieu de repos plus sécurisé.

Faire cela est facile. Il suffit d’ouvrir FileZilla (ou votre programme FTP de choix), de rechercher votre fichier wp-config.php, de cliquer dessus et de le faire glisser jusqu’en haut du volet de la fenêtre FTP. Lorsque vous survolez le dossier intitulé “..” (comme indiqué ci-dessus), vous pouvez lâcher votre fichier et le “déposer” dans le dossier “..”.

Vous devriez maintenant voir votre fichier wp-config.php disparaître du dossier public_html et apparaître dans le dossier au niveau supérieur (pour voir ce dossier, cliquez sur le dossier “..”).

Remarque : vous n’avez peut-être pas l’autorisation de le faire vous-même. Si votre connexion FTP vous conduit directement au dossier public_html, vous devrez demander à votre hébergeur de le faire pour vous.

Si votre connexion FTP vous dépasse d’un niveau au dessus du dossier public_html, mais que vous ne pouvez toujours pas “glisser-déposer” avec succès le fichier wp-config.php, consultez votre journal FTP pour plus d’informations (dans FileZilla, vous pouvez l’activer). en allant dans le menu “Affichage” et en cliquant sur “Journal des messages”).

Que contient le fichier wp-config.php?

Maintenant que le bit de sécurité est terminé, voyons ce que contient réellement le fichier wp-config.php.

Les éléments livrés avec le fichier par défaut wp-config-sample.php sont en bleu.   Tous les éléments supplémentaires que vous pouvez ajouter sont en noir , comme d’habitude (ne les ajoutez que si vous comptez les utiliser).

Paramètres de la base de données

  • DB_NAME : Nom de la base de données utilisé par WordPress
  • DB_USER : Nom d’utilisateur utilisé pour accéder à la base de données
  • DB_PASSWORD : Mot de passe utilisé par le nom d’utilisateur pour accéder à la base de données
  • DB_HOST : nom d’hôte de votre serveur de base de données. Ceci est normalement localhost , mais si vous n’êtes pas sûr, vous pouvez demander à votre hébergeur ou utiliser une astuce pour remplacer la ligne par define (‘DB_HOST’, $ _ENV {DATABASE_SERVER});

Si votre fournisseur d’hébergement a installé WordPress pour vous, il sera en mesure de fournir ces informations. Si vous gérez votre propre hébergement, vous devriez déjà avoir ces informations à la suite de la création de la base de données et de l’utilisateur.

  • $ préfixe_table : Ce sont les lettres qui sont attachées au début de tous vos noms de tables WordPress, dans votre base de données WordPress. Si vous n’avez pas changé cela dans le cadre de votre installation WordPress, il est probable que vous utilisiez le paramètre par défaut, wp_ . Du point de vue de la sécurité, ceci est très peu sécurisé (car les pirates informatiques sauront comment cibler les noms de table de la base de données commençant par wp_) et devraient être modifiés dès que possible. Si vous êtes un utilisateur expérimenté et que vous savez ce que vous faites, vous pouvez le modifier manuellement en remplaçant wp_ par quelque chose d’aléatoire, comme pahfh_ , puis en mettant à jour vos tables de base de données (et certains éléments de ces tables) avec les mêmes modifications. Si vous n’êtes pas un utilisateur expérimenté, procurez-vous un bon plugin de sécurité, tel que Better WP Security, qui peut le faire pour vous.

Les paramètres de sécurité

  • AUTH_KEY : Ajouté pour assurer un meilleur cryptage des informations stockées dans les cookies de l’utilisateur.   Ne laissez pas ces valeurs définies par défaut.   Voir les instructions ci-dessous.
  • SECURE_AUTH_KEY : Ajouté pour assurer un meilleur cryptage des informations stockées dans les cookies de l’utilisateur.   Ne laissez pas ces valeurs définies par défaut.   Voir les instructions ci-dessous.
  • LOGGED_IN_KEY : Ajouté pour assurer un meilleur cryptage des informations stockées dans les cookies de l’utilisateur.   Ne laissez pas ces valeurs définies par défaut.   Voir les instructions ci-dessous.
  • NONCE_KEY : Ajouté pour assurer un meilleur cryptage des informations stockées dans les cookies de l’utilisateur.   Ne laissez pas ces valeurs définies par défaut.   Voir les instructions ci-dessous.
  • AUTH_SALT : Utilisé pour rendre AUTH_KEY plus sécurisé.
  • SECURE_AUTH_SALT : utilisé pour rendre SECURE_AUTH_KEY plus sécurisé.
  • LOGGED_IN_SALT : Utilisé pour rendre LOGGED_IN_KEY plus sécurisé.
  • NONCE_SALT : utilisé pour rendre le NONCE_KEY plus sécurisé.

Du point de vue de la sécurité, l’un des principes de base absolus consiste à remplacer les éléments de votre phrase unique par des phrases uniques, et bien plus encore.

Pour ce faire, rendez-vous sur https://api.wordpress.org/secret-key/1.1/salt/ et copiez les lignes générées de manière aléatoire dans votre fichier wp-config.php.

Vous n’avez pas besoin de vous en souvenir, vous n’avez qu’à les configurer une fois pour les oublier.

Vous pouvez les modifier à tout moment (en particulier si vous êtes piraté). Si vous le faites, cela invalidera tous les cookies utilisateur existants, ce qui signifiera simplement que tous les utilisateurs devront se connecter à nouveau.

Certains d’entre vous se souviendront peut-être que WordPress possédait auparavant une zone dans laquelle vous pouviez définir où vos envois multimédias se dirigeaient. Il a peut-être disparu de l’administrateur WordPress, mais vous pouvez toujours effectuer la modification à l’aide du fichier wp-config.php.

Si vous ne souhaitez pas utiliser le répertoire ‘wp-content’, vous pouvez utiliser ce code à la place:

  • DISALLOW_FILE_EDIT : Dans la zone Administrateur WordPress (Apparence -> Editeur), il est possible de modifier une plage de vos fichiers WordPress (principalement liés au thème). La plupart des utilisateurs n’utiliseront jamais cette zone (uniquement pour les utilisateurs expérimentés), et la laisser ouverte aux pirates constitue un risque pour la sécurité. Vous pouvez verrouiller cette zone avec la valeur définie sur true et la rouvrir en définissant la valeur sur false.

Si SSL est activé sur votre site Web, il est vraiment dommage de le gaspiller. Activer SSL sur votre espace administrateur avec ces deux paramètres

  • FORCE_SSL_LOGIN : oblige WordPress à utiliser une connexion sécurisée lors de la connexion. Définissez la valeur sur true pour l’activer.
  • FORCE_SSL_ADMIN : oblige WordPress à utiliser une connexion sécurisée pour parcourir une page de votre zone d’administrateur. Définissez sur true pour activer.

Autorisations de fichier pour wp-config.php

Vraiment, cela fait partie de la sécurité de votre site Web, mais c’est un aspect tellement important qu’il a gagné sa propre petite section.

Personne (à part vous) n’aurait jamais besoin d’accéder à ce fichier, il est donc préférable de le verrouiller autant que possible. Le dernier cadenas sur la sécurité de votre fichier wp-config.php consiste à modifier les autorisations d’accès. Vous pouvez le faire par FTP en cliquant avec le bouton droit de la souris sur le fichier, en sélectionnant Autorisations sur les fichiers, puis en modifiant les autorisations en décochant les cases correspondantes (idéalement, la valeur numérique en bas devrait être 400, mais peut-être 440 en fonction de votre hébergement. fournisseur).

(Remarque secondaire – n’oubliez pas de protéger votre fichier wp-config.php à l’aide de votre fichier .htaccess.)

Paramètres de langue

  • DB_CHARSET : utilisé pour le jeu de caractères de la base de données. La valeur par défaut est utf8, qui prend en charge n’importe quelle langue. Par conséquent, cela ne devrait pas être modifié sauf si cela est absolument nécessaire. DB_COLLATE devrait plutôt être utilisé pour votre valeur de langue.
  • DB_COLLATE : utilisé pour définir l’ordre de tri du jeu de caractères de la base de données. Normalement, cela est laissé vide, ce qui permet à MySQL de vous attribuer automatiquement la valeur, en fonction de la valeur de DB_CHARSET. Si vous décidez de modifier cette valeur, assurez-vous qu’elle est définie sur un jeu de caractères UTF-8, tel que utf8_general_ci ou utf8_spanish_ci.

L’anglais est la langue par défaut de WordPress, mais il peut être facilement modifié à l’aide de ces deux paramètres:

  • WPLANG : Nom du fichier de traduction de langue (.mo) que vous souhaitez utiliser. Si vous travaillez en anglais, vous pouvez laisser ce champ vide. Si vous travaillez dans une langue autre que l’anglais, vous pouvez rechercher votre code de langue ici: http://codex.wordpress.org/WordPress_in_Your_Language. Pour l’espagnol, cela deviendrait une définition (‘WPLANG’, ‘es_ES’);
  • WP_LANG_DIR : WordPress recherchera vos fichiers de traduction de langue (.mo) à deux endroits: d’abord wp-content / languages ​​et (s’il n’y a pas de chance), ensuite wp-includes / languages. Si vous souhaitez stocker vos fichiers de traduction de langue ailleurs, vous pouvez définir cet emplacement ici.

Paramètres de performance

  • WP_HOME : ceci remplace la valeur de la table wp_options pour la maison, ce qui réduit les appels à la base de données WordPress et augmente donc les performances. Définissez la valeur sur le domaine de votre site Web complet, y compris le http: // et en laissant de côté la barre oblique ” / “.
  • WP_SITEURL : cela remplace la valeur de la table wp_options pour siteurl (réduction des appels à la base de données WordPress et donc augmentation des performances) et désactive le champ d’adresse WordPress (URL) dans Paramètres -> Général. Définissez la valeur sur le domaine de votre site Web complet, y compris le http: // et en laissant de côté la barre oblique ” / “.
  • WP_POST_REVISIONS : Par défaut, WordPress enregistre automatiquement toutes les versions précédentes de vos publications, juste au cas où vous décideriez de revenir à une version que vous avez écrite la semaine dernière ou l’année dernière. La plupart des gens n’utilisent pas cette fonctionnalité. En fait, la plupart des gens ne savent pas qu’elle existe. Comme vous pouvez l’imaginer, l’activer par défaut crée une charge supplémentaire sur la base de données. Laissez reposer votre mauvaise base de données et définissez cette définition sur false ou, si vous aimez vraiment la fonctionnalité de révision, remplacez simplement false par le nombre de révisions que vous souhaitez conserver (entre 2 et 5 correspond normalement à un bon nombre).
  • WP_MEMORY_LIMIT : utilisé pour augmenter la mémoire maximale utilisable par PHP. Correctif courant pour les erreurs “fatal memory épuision”. 64M est un bon point de départ, mais vous pouvez l’augmenter si nécessaire.

Il est important de noter que certaines sociétés d’hébergement ont une limite absolue sur la mémoire PHP disponible pour vous. Si cet ajout ne résout pas le problème, vous devrez peut-être très bien demander à votre hébergeur s’il va augmenter la limite de son fichier php.ini pour vous.

Paramètres de débogage

  • WP_DEBUG : contrôle l’affichage de certaines erreurs et avertissements (à l’usage des développeurs). La valeur par défaut est false , mais tout développeur souhaitant déboguer du code doit lui attribuer la valeur true .
  • CONCATENATE_SCRIPTS : Pour une zone d’administrateur plus rapide, WordPress concatène tous les fichiers Javascript dans une URL. La valeur par défaut de ce paramètre est true , mais si Javascript ne fonctionne pas dans votre zone d’administration, vous pouvez désactiver cette fonctionnalité en lui attribuant la valeur false .

Paramètres multisites

  • WP_ALLOW_MULTISITE : Pour activer WordPress Multisite (auparavant effectué via WordPress MU), vous devez ajouter cette définition à votre fichier wp-config.php. Le paramètre doit être vrai pour être activé.

Une fois que vous avez ajouté cette définition, une nouvelle page “Réseau” apparaît dans votre wp-admin, que vous pouvez trouver dans Outils> Réseau .
Suivez les instructions sur cette nouvelle page pour continuer la configuration.

Paramètres du site

Il s’agit essentiellement de détailler le chemin absolu du répertoire WordPress, puis de configurer les variables et les fichiers WordPress à inclure.

Il ne devrait pas être nécessaire de changer ce code, mais il fait partie du fichier standard wp-config-sample.php, je le fais donc apparaître au cas où quelqu’un dirait “Hé, où est ce morceau de code à la fin ? ”

Que se passe-t-il si je mets à jour WordPress?

wp-config.php est l’un des rares fichiers qui n’a pas été modifié au cours des mises à niveau normales de WordPress. Vous n’avez donc pas à vous soucier de son écrasement.

Pourquoi n’y a-t-il pas de balise PHP de fermeture?

L’observateur parmi vous aura remarqué que s’il existe une balise php d’ouverture, il n’y a pas de balise php de fermeture.

Ce n’est pas une erreur et votre fichier wp-config.php peut être laissé heureusement sans balise de fermeture.

Pourquoi?

Eh bien, croyez-le ou non, un problème très simple “d’espaces après la fermeture des balises PHP” est connu pour causer toute une série de problèmes, y compris des erreurs “en-têtes déjà envoyés” et la suppression d’autres éléments au sein de sites Web parfaitement sains.

Il y a plusieurs années, WordPress a décidé de simplifier un peu la vie de tous en supprimant la balise PHP finale du fichier wp-config.php.
Plus récemment, ils ont fait la même chose avec plusieurs autres fichiers de base.

Dernier conseil

Espérons que cela a fourni un aperçu des nombreuses choses que vous pouvez faire avec le fichier wp-config.php.

Les définitions les plus couramment utilisées se trouvent ici. Cependant, si vous cherchez quelque chose de très sur mesure, vous pouvez trouver une liste complète des définitions dans le Codex WordPress ici: http://codex.wordpress.org/Editing_wp-config.php .

Visits: 11