L’un de nos lecteurs nous a récemment demandé s’il était possible d’empêcher WordPress d’écraser son code personnalisé dans le fichier .htaccess. Il s’agit d’une préoccupation courante, car WordPress et diverses extensions ajoutent souvent leurs propres Réglages à ce fichier de configuration.
Si vous avez ajouté du code personnalisé au fichier .htaccess, il est compréhensible que vous vous inquiétiez qu’il soit écrasé ou supprimé. En gardant ce code en sécurité, vous éviterez de perturber les performances et la sécurité de votre site.
Dans cet article, nous vous guiderons à travers les étapes pour empêcher WordPress d’écraser le fichier .htaccess. En suivant ces instructions, vous pouvez protéger votre code personnalisé et vous assurer que votre site fonctionne sans interférence.
Pourquoi WordPress écrase-t-il le fichier .htaccess ?
Votre fichier .htaccess est un fichier de configuration puissant qui stocke des Réglages importants concernant votre site WordPress. Il contient des règles qui indiquent à votre serveur d’hébergeur comment gérer votre site.
WordPress utilise le fichier .htaccess pour stocker ses réglages permaliens. Lorsque vous modifiez ou régénérez vos permaliens, WordPress remplace automatiquement les anciens Réglages du fichier .htaccess par les nouveaux.
Certaines extensions WordPress enregistrent également leurs réglages dans le fichier .htaccess. Par exemple, l’extension W3 Total Cache modifiera votre fichier .htaccess afin de commander les outils de mise en cache et d’optimisation qui font partie de l’extension.
Dernier point, vous pouvez apporter vos propres modifications personnalisées au fichier .htacess pour contrôler le fonctionnement de votre site. Par exemple, vous pouvez ajouter des règles personnalisées au fichier pour protéger votre zone d’administration, mettre votre site à l’abri des pirates, configurer des redirections, interdire les adresses IP suspectes, etc.
Certains utilisateurs s’inquiètent du fait que s’ils ajoutent leurs propres règles personnalisées au fichier .htaccess, celles-ci risquent d’être supprimées lorsque WordPress écrasera le fichier avec de nouveaux paramètres. D’autres utilisateurs/utilisatrices préfèrent configurer manuellement le fichier .htaccess et ne pas laisser WordPress y écrire.
Ceci étant dit, voyons comment empêcher WordPress d’écraser votre fichier .htaccess. Utilisez simplement les liens rapides ci-dessous pour passer à la section qui vous intéresse :
Comment empêcher WordPress d’écraser vos règles .htaccess
La bonne nouvelle, c’est que si vous comprenez le fonctionnement du fichier .htaccess, vous pouvez être certain que vos règles personnalisées ne seront pas écrasées.
En effet, les zones du fichier qui seront modifiées par WordPress ou vos extensions sont clairement indiquées. Confirmez simplement que vous n’ajoutez pas de code dans ces zones.
Ne modifiez pas le code à l’intérieur des marqueurs WordPress
Comme nous l’avons dit précédemment, WordPress utilise le fichier .htaccess pour stocker les Réglages d’une structure d’URL favorable au référencement. Le code qu’il enregistre dans le fichier sera automatiquement écrasé et mis à jour chaque fois que vous modifiez vos réglages permaliens.
Comme vous pouvez le voir dans la capture d’écran ci-dessous, WordPress enregistre ces informations entre deux marqueurs, # BEGIN WordPress
et # END WordPress
.
Notez la notification à l’intérieur de ces marqueurs :
Les directives (lignes) entre « BEGIN WordPress » et « END WordPress » sont générées dynamiquement et doivent être modifiées uniquement via les filtres WordPress. Toute modification des directives entre ces marqueurs sera écrasée.
Cela signifie que WordPress n’écrasera ni ne modifiera le code que vous ajoutez en dehors de ces marqueurs. Les utilisateurs/utilisatrices ajoutent généralement leur code personnalisé au début du fichier, au-dessus du marqueur # BEGIN WordPress
.
Astuce :.htaccess est un fichier masqué situé dans le dossier racine de votre site WordPress. Si vous avez des difficultés à le trouver, consultez notre guide sur les raisons pour lesquelles vous ne trouvez pas le fichier .htaccess sur votre site WordPress.
Ne modifiez pas le code à l’intérieur des marqueurs de vos extensions
Lorsqu’une extension enregistre ses réglages dans le fichier .htaccess, elle les place également entre des marqueurs qui ressemblent à # BEGIN Plugin
et # END Plugin
.
Par exemple, si vous installez et définissez l’extension W3 Total Cache pour améliorer la vitesse et les performances de votre site, elle ajoutera des règles au fichier .htaccess entre les marqueurs # BEGIN W3TC Browser Cache
et # END W3TC Browser Cache
.
Ces règles seront écrasées chaque fois que vous modifierez les Réglages du plugin, vous devez donc veiller à ne pas ajouter vos propres règles .htaccess personnalisées entre ces marqueurs.
Création de marqueurs pour votre code personnalisé
Dans de rares cas, une extension qui se comporte mal peut modifier le code en dehors de ses marqueurs # BEGIN
et # END
. Cependant, il ne modifiera normalement pas le code trouvé entre les marqueurs utilisés par WordPress ou d’autres extensions.
Si vous craignez qu’une extension mal conçue n’écrase votre code, vous pouvez ajouter vos propres marqueurs au fichier .htaccess.
Par exemple, vous pouvez saisir les marqueurs # BEGIN MyCustomCode
et # END MyCustomCode
en haut du fichier .htaccess, puis ajouter vos propres règles personnalisées entre ces marqueurs.
Si vous devez également ajouter du code à la fin du fichier .htaccess, vous pouvez y définir un autre ensemble de marqueurs. Confirmez simplement que vous leur donnez des noms différents. Par exemple, vous pouvez utiliser « MyCustomCodeTop » et « MyCustomCodeBottom ».
Comment empêcher WordPress de modifier .htaccess
Maintenant que vous comprenez le fonctionnement de .htaccess, vous pouvez être sûr que votre code personnalisé ne sera pas écrasé par WordPress ou vos extensions.
Cependant, certains développeurs/développeuses et utilisateurs/utilisatrices avancés souhaitent empêcher WordPress d’apporter des modifications au fichier .htaccess.
Par exemple, vous pouvez vouloir créer des permaliens en tapant les réglages manuellement dans le fichier .htaccess. Dans ce cas, vous voudrez éviter les conflits en empêchant WordPress d’enregistrer ses propres réglages permaliens dans le fichier.
Nous ne recommandons pas cette méthode à moins que vous ne sachiez ce que vous faites, car elle peut avoir des perspectives inattendues. Cependant, il est possible de modifier les droits du fichier ou d’utiliser du code.
Empêcher WordPress de modifier .htaccess en utilisant les droits sur les fichiers
Une façon d’empêcher WordPress de modifier le fichier .htaccess est de le mettre en lecture seule. Pour ce faire, vous devez modifier les droits du fichier à l’aide d’un client FTP ou du gestionnaire de fichiers fourni par votre fournisseur d’hébergement WordPress.
Vous trouverez le fichier .htaccess dans le répertoire racine de votre installation WordPress. Ensuite, vous devez cliquer avec le bouton droit de la souris sur le fichier et sélectionner » Droits des fichiers « .
Une fenêtre contextuelle s’affiche, dans laquelle vous pouvez modifier les attributs du fichier.
Le réglage par défaut est 644, mais vous pouvez le modifier en 444 en tapant directement dans le champ « Valeur numérique » ou en vous assurant que seules les cases « Lire » sont cochées.
Une fois que vous aurez cliqué sur le bouton « OK », le fichier sera en lecture seule et ne pourra pas être modifié.
Bien entendu, cela signifie que vous ne pourrez pas non plus écrire dans le fichier. Lorsque vous souhaiterez apporter des modifications, vous devrez temporairement définir à nouveau les droits du fichier à 644.
Empêcher WordPress de modifier le fichier .htaccess à l’aide d’un code
Une autre solution consiste à utiliser un extrait de code qui permet à WordPress de savoir qu’il ne doit pas écrire dans le fichier .htaccess. Ceci est utile si vous voulez empêcher WordPress de modifier le fichier .htaccess sans bloquer vos extensions.
Note : Il peut être dangereux de modifier les fichiers du cœur de WordPress. Même une petite erreur peut provoquer des erreurs majeures sur votre site. C’est pourquoi nous recommandons cette méthode uniquement aux utilisateurs/utilisatrices avancés.
Il suffit d’ajouter l’extrait de code suivant à la fin de votre fichier wp-config.php. Si vous avez besoin d’aide, Veuillez consulter notre guide sur la façon de modifier le fichier wp-config.php dans WordPress:
add_filter('got_rewrite', '__return_false');
Une fois que vous avez fait cela, WordPress n’écrira plus dans le fichier .htaccess.
Message d’erreur modifié lorsque WordPress ne peut pas modifier le fichier .htaccess
Si vous essayez de modifier vos Réglages permaliens lorsque .htaccess est défini en lecture seule, un message d’erreur s’affichera.
En haut de la page Réglages » Permaliens, vous verrez le message « Vous devriez mettre à jour votre fichier .htaccess maintenant ».
Cela vous permet de savoir que WordPress n’a pas pu modifier le fichier .htaccess.
Normalement, c’est ce que vous vouliez. Toutefois, si vous souhaitez ajouter les réglages permaliens de WordPress au fichier .htaccess, vous devrez le faire manuellement.
En bas de la page Réglages « Permaliens, vous verrez un autre message d’erreur indiquant que votre fichier .htaccess n’est pas accessible en écriture. En dessous, vous verrez les règles qui doivent être ajoutées au fichier .htaccess.
Si vous souhaitez ajouter ces Réglages, vous devrez temporairement modifier les droits du fichier .htaccess à 644 afin qu’il puisse être modifié. Ensuite, vous devrez coller les règles entre les marqueurs BEGIN et END du fichier WordPress, en remplaçant le code qui s’y trouve déjà.
Lorsque vous avez terminé, il vous suffit de définir à nouveau la valeur 444 et d’enregistrer le fichier. Il sera à nouveau inscriptible.
Guides d’experts sur .htaccess dans WordPress
Nous espérons que ce tutoriel vous a aidé à apprendre comment empêcher WordPress d’écraser le fichier .htaccess. Vous pouvez également consulter d’autres guides liés au fichier .htaccess :
- Glossaire : .htaccess
- Comment corriger le fichier .htaccess de WordPress (Guide du débutant)
- Les astuces .htaccess les plus utiles pour WordPress
- Pourquoi ne trouvez-vous pas le fichier .htaccess sur votre site WordPress ?
- Comment ajouter des en-têtes de sécurité HTTP dans WordPress (Guide du débutant)
- Comment ajouter des en-têtes Expires dans WordPress
- Guide du débutant pour dépanner les erreurs de WordPress (étape par étape)
Si vous avez aimé cet article, veuillez alors vous abonner à notre chaîne YouTube pour obtenir des tutoriels vidéo sur WordPress. Vous pouvez également nous trouver sur Twitter et Facebook.
Jiří Vaněk
This was one of the first articles on WPBeginner when I deliberately searched for why a customer’s .htaccess was being overwritten. Now we know it, understand it, and also write .htaccess correctly. Many thanks for understanding the reason.
WPBeginner Support
Glad our guide could help!
Administrateur