Table des matières

WordPress repose sur plusieurs fichiers de coeur pour faire fonctionner votre site, et le puissant fichier de configuration .htaccess est l’un d’entre eux.

Son nom est une abréviation de “hypertext access”, et WordPress utilise ce fichier avant tout pour s’occuper des permaliens. Mais son vrai pouvoir réside dans sa capacité à passer outre les réglages de votre serveur, ce qui vous permet d’ajouter vos propres règles à ce fichier et d’augmenter la sécurité et les performances de votre site.

Certaines de ces fonctionnalités supplémentaires incluent : bloquer l’accès extérieur aux fichiers critiques, envoyer des en-têtes HTTP personnalisés, forcer le SSL, et restreindre l’accès au tableau de bord WordPress. 

Dans cet article, nous verrons comment le fichier .htaccess fonctionne et comment le modifier. Nous verrons aussi certains exemples de ce que vous pouvez faire avec ce fichier pour améliorer les performances de votre site. 

htaccess panel rules preview

Qu’est ce que le fichier .htaccess ? 

Le fichier .htaccess est un fichier de configuration que WordPress utilise avec les serveurs web Apache. Comme la plupart des hébergeurs web utilisent Apache, la plupart des sites web sur WordPress ont aussi un fichier .htaccess.

Ce fichier se trouve en général dans le dossier racine de votre site. Mais comme il règle la manière dont Apache doit gérer la configuration de votre site sur une base par dossiers, il se peut que vous trouviez des versions de ce fichier dans d’autres dossiers de votre site. 

C’est un fichier caché, c’est pour ça qu’il commence par un point et n’a pas d’extension. Cela veut dire que vous ne pourrez pas le voir en parcourant vos fichiers, à moins que vous ne puissiez voir tous les fichiers cachés sur votre ordinateur. 

Dans WordPress, le .htaccess a une fonction importante : il contrôle la manière dont vos permaliens apparaissent. Le fichier est généré automatiquement la première fois que vous customisez vos permaliens, et si vous faites des changements plus tard sur la structure de vos permaliens, le fichier est automatiquement mis à jour avec les nouvelles règles. 

Pour beaucoup de petits sites WordPress simples, le .htaccess ne fera que gérer les permaliens. Mais pour des sites plus imposants et complexes, le .htaccess est souvent manipulé par des plugins. C’est d’autant plus fréquent avec les plugins de sécurité et de mise en cache, comme WP Rocket qui édite le .htaccess pour mettre en place la compression GZIP sur votre site et ajoute les règles optimales de mise en cache de navigateur. 

Vous pouvez également faire vos propres changements dans le .htaccess pour activer / désactiver des fonctionnalités avancées sur votre site. Il y a beaucoup de choses que vous pouvez faire via le fichier .htaccess, comme empêcher la navigation dans les dossiers, restreindre l’accès aux fichiers PHP, et même protéger votre site contre l’injection de scripts.

Comment trouver le fichier .htaccess dans WordPress 

Le fichier .htaccess se trouve dans le dossier racine de votre site. Mais avant d’aller le trouver et de faire des changements dessus, il faut bien comprendre que modifier ce fichier comporte des risques :  une seule erreur de syntaxe pourrait endommager des fonctionnalités clé, ou même casser votre site. 

Pour commencer : créez une sauvegarde 

Assurez-vous de faire une sauvegarde de votre site avant de modifier ce fichier. Vous pouvez aussi un site de test pour mettre à jour le .htaccess et tester les effets de ces changements sur les fonctionnalités de votre site avant de le mettre en place pour de bon.

Si vous aimez vivre dangereusement et que vous voulez éditer votre site directement, vous feriez bien de télécharger une version de votre fichier .htaccess sur votre ordinateur, pour en avoir une sauvegarde. De cette manière, si vous cassez votre site, vous n’aurez qu’à remettre la copie d’origine sur votre serveur, comme si de rien était.  

Il existe typiquement 3 manières d’accéder à votre fichier .htaccess :

1. Modifier le .htaccess en utilisant cPanel

  1. Connectez-vous au cPanel de votre site et allez dans votre gestionnaire de fichiers.
  2. Le gestionnaire de fichiers vous montrera une liste de fichiers sur votre serveur web. Cherchez “public_html” et cliquez dessus.
  3. Vous êtes maintenant dans le dossier racine de votre site web (à moins que votre site se situe dans un sous-dossier). Faites défilez les fichiers jusqu’à trouver le fichier .htaccess :
how to find htaccess in cpanel

Si vous ne trouvez pas le fichier, il se peut que vous n’en ayez pas, ou que vous deviez changer vos réglages pour les fichiers cachés. 

Pour mettre à jour les réglages des fichiers cachés, cliquez sur “Settings” dans le coin en haut à droite de File Manager, et dans la fenêtre qui apparaît, cochez la case “Show Hidden Files.”

update hidden files settings

2. Modifier le .htaccess en utilisant le FTP 

1. Avec les détails de votre FTP, connectez-vous à votre site en utilisant votre app FTP préférée (j’utilise FileZilla).

2. Une fois que votre client FTP est connecté à votre site, vous devriez voir les fichiers racine de votre serveur dans le quart en bas à droite, comme sur l’image ci-dessous : 

how to check htaccess file on FTP

3. Cherchez “public_html” dans la liste de fichiers et double-cliquez dessus. 

4. Vous serez alors dans le dossier racine de votre site (à moins, bien entendu, que vous ayez placé WordPress dans un sous-dossier). En faisant défiler les fichiers listés vous devriez voir votre fichier .htaccess :

htaccess file in root directory

3. Modifier votre .htaccess en utilisant un plugin

Il existe de très nombreux plugins qui permettent de modifier le fichier .htaccess, mais Yoast SEO est le plus populaire d’entre eux.

Pour accéder à votre fichier .htaccess dans le tableau de bord WordPress : 

1. Connectez-vous à votre site et allez dans SEO > General.

2. Dans l’onglet en haut de la page, cliquez sur “Features” puis scrollez vers le bas de la page à “Security: no advanced settings for authors” et désactivez cette option. Sauvegardez les changements. 

3. Ensuite, allez dans SEO > Tools. Vous devriez voir l’option “File editor” option. Cet outil vous permet de faire des changements dans votre fichier .htaccess.

Note : si l’édition de fichier est désactivée sur votre site, comme ça l’est sur le mien (d’où le manque d’illustrations ici), vous ne verrez pas cette option dans votre WordPress install. Vous devrez utiliser une autre méthode pour accéder à votre fichier .htaccess.

Créer un fichier .htaccess si vous n’en avez pas déjà un

Si vous n’avez pas de fichier .htaccess dans votre dossier racine, vous devez en créer un. Avant cela, vérifiez que vous bien accès aux fichiers cachés, afin de ne pas créer une deuxième copie du fichier par accident (et remplacer votre fichier d’origine sans le vouloir). 

La manière la plus simple d’en créer un nouveau est d’aller dans Réglages > Permaliens dans le tableau de bord WordPress et cliquer sur “Sauvegarder les changements”. WordPress va générer automatiquement un fichier, et vous n’avez pas à changer les réglages de vos permaliens.  

Sinon, dans le cas où vous voudriez créer et éditer n’importe quel contenu de ce fichier, voici comment en créer un en utilisant cPanel :

1. Dans le gestionnaire de fichiers, allez dans votre dossier racine (public_html).

2. Cliquez sur “Fichier” en haut à gauche et entrez .htaccess. Cliquez sur “Créer un nouveau fichier:

how to create a new htaccess file

3. Le dossier racine va se rafraîchir et vous pourrez voir votre nouveau fichier .htaccess tout neuf parmi vos autres fichiers. 

Comme toutes les installations WordPress ont les permaliens activés par défaut (depuis WordPress 4.2), vous devriez inclure les règles de base qui sont par défaut dans les fichiers .htaccess des versions les plus récentes de WordPress, plutôt que d’avoir un fichier vide. 

Vous devrez donc modifier votre fichier .htaccess vide pour pouvoir y ajouter ces règles. 

Toujours dans votre dossier racine, assurez-vous que le .htaccess est sélectionné et cliquez sur l’option “Editer” en haut de la page :

how to add rules on a new htaccess file

Un nouvel onglet s’ouvrira dans lequel vous pourrez ajouter les règles de configuration suivantes :

how to add configuration rules on htaccess

Pour les configurations multisite et autres, vous devrez utiliser des règles différentes. Vous pouvez trouver la liste complète des règles htaccess sur le Codex.

Modifier le fichier .htaccess 

Il y a certaines choses à savoir lorsque vous faites des changements sur le fichier .htaccess. 

Tout d’abord, les lignes qui commencent avec une dièse sont des commentaires et pas de vraies règles. Ces lignes ne font rien à part donner des marqueurs utiles au milieu du texte pour vous indiquer où les règles commencent et finissent. 

Ensuite, lorsque vous ajoutez de nouvelles règles, vous devez les insérer soit au dessus ou en dessous des règles par défaut de WordPress. Vous ne devez rien ajouter ou modifier entre les lignes qui commencent par 

# BEGIN WordPress

et

# END WordPress

En général, la norme veut que l’on ajoute n’importe quelle nouvelle règle en dessous des instructions par défaut de WordPress. De cette manière, vous saurez que les règles de WordPress sont toujours en haut du fichier et toutes les nouvelles règles se trouvent en dessous. 

Néanmoins, WP Rocket fait exception à cette règle : ses règles doivent être placées tout en haut du fichier .htaccess. Le plugin les ajoutera automatiquement, vous n’aurez donc pas à modifier le fichier .htaccess vous-même. 

Vous pourriez avoir envie d’ajouter vos propres commentaires au fichier .htaccess, surtout si vous ajoutez beaucoup de nouvelles règles concernant la sécurité et la performance, le fichier risque de devenir désordonné. Les commentaires peuvent vous aider à trouver rapidement une règle, garder une trace de vos changements, ou tenir votre fichier en ordre.

Lorsque vous ajoutez une nouvelle règle au .htaccess, veillez à sauvegarder vos changements et à rafraîchir votre site pour voir s’il fonctionne toujours correctement. Cela vous indiquera aussi quelle règle en particulier casse votre site, et si cela arrive, vous n’aurez qu’à effacer la règle qui pose problème ou simplement remettre votre sauvegarde de fichier .htaccess pour que votre site fonctionne à nouveau. 

Exemples de règles dans le .htaccess sur WordPress 

En ajoutant de nouvelles règles à votre fichier .htaccess, vous obtenez plus de contrôle sur votre site et votre serveur en opérant des changements qui boostent les performances de votre site. 

Avant de plonger dans le coeur du sujet, assurez-vous bien d’avoir une copie de sauvegarde de votre fichier .htaccess. Il se peut que votre hébergeur web n’ait pas la compatibilité avec certaines des règles, ou que vous fassiez une coquille par inadvertance, et vous risquez de casser votre site. 

Quoiqu’il en soit, la solution la plus facile est de faire une copie de votre .htaccess et de lui donner un nom comme .htaccess_original. De cette manière, lorsque vous faites des changements dans le fichiers et que vous découvrez que vous devez faire machine arrière, vous n’aurez qu’à renommer votre copie de sauvegarde et la télécharger dans votre dossier racine. 

Autoriser la compression HTTP 

Tous les navigateurs modernes connaissent et négocient automatiquement la compression GZIP pour toutes les requêtes HTTP. En activant GZIP, vous pouvez souvent obtenir des taux de compression allant jusqu’à 70 – 90 %, comme j’en parle dans cet article d’il y a quelques semaines. Cela peut réduire de manière significative le temps nécessaire pour charger les ressources, réduire l’utilisation de données pour les visiteurs de votre site, et améliorer le temps d’affichage de vos page.

Il faut bien noter que WP Rocket ajoute automatiquement les règles de compression GZIP à votre fichier .htaccess en utilisant le module mod_deflate. Si vous utilisez WP Rocket, vous n’aurez rien à faire car GZIP sera déjà en place et actif sur votre site. 

Pour vous donner une idée de ce à quoi le module mod_deflate ressemble, voici une version simplifiée : 

<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript application/javascript
</ifmodule>

Empêcher le hotlink d’image 

Chaque image sur vos pages envoie une requête HTTP séparée à votre serveur. Lorsque quelqu’un utilise l’URL de l’une de vos images et l’ajoute à son site au lieu de charger l’image sur leur propre serveur, ils volent de votre bande-passante. 

Cette technique s’appelle le hotlink. Pour empêcher que cela n’arrive à votre site, ajoutez la règle suivante à votre fichier .htaccess :

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain.com/.*$ [NC]
RewriteRule \.(gif|jpg|png)$ - [F]

Remplacez bien “yourdomain.com” avec l’URL de votre site.

Vous trouverez plus d’exemples de règles à ajouter au .htaccess pour booster la sécurité et les performances de votre site dans le codex WordPress.

Conclusion

Utiliser et modifier le fichier .htaccess de votre site vous permet de faire des changements importants sur la configuration de votre serveur. De cette manière, vous augmentez la sécurité et les performances de votre site. 

Vous trouverez plus de règles que vous pouvez ajouter au fichier .htaccess dans le codex WordPress. Il existe aussi de nombreux blogs de développeurs et de sujets de discussion sur StackExchange qui parlent de trucs et astuces pour modifier le .htaccess.

Enfin, n’oubliez pas de faire une sauvegarde de votre site à chaque fois que vous effectuez des changements dans les fichiers coeur de WordPress comme .htaccess, afin de pouvoir faire machine arrière si quelque chose se passe mal. 

Avez-vous déjà modifié votre .htaccess ? Partagez vos questions et vos astuces de règles de .htaccess dans les commentaires. 


Autres articles sur SEO
S’abonner à notre newsletter

Stay in the loop with the latest WordPress and web performance updates.
Straight to your inbox every two weeks.

Obtenez un site Web plus rapide
en quelques clics

Installation en 3 minutes chrono
Obtenir WP Rocket