9 usages du fichier .htaccess d’un site WordPress

WordPress

9 usages du fichier .htaccess d’un site WordPress

Olivier
11 min read

Le fichier .htaccess d’un site WordPress peut avoir plusieurs usages. Il s’agit d’un fichier de configuration pour les serveurs web Apache présent sur tous les sites WordPress.

C’est un outil puissant qui permet de protéger votre site ou augmenter ses performances en apportant simplement quelques ajustements mineurs à son code.

Avec ce fichier, vous pouvez bloquer des utilisateurs, créer des redirections, prévenir les attaques, et même refuser l’accès à certains éléments spécifiques de votre site.

En somme, il offre de nombreuses opportunités de configuration pouvant être utilisées, en fonction de vos besoins spécifiques.

Une brève introduction au fichier .htaccess

usages du fichier .htaccess d'un site WordPress

Comme nous l’avons mentionné, .htaccess est un fichier de configuration. Il détermine comment les serveurs basés sur Apache doivent interagir avec votre site internet.

En somme, .htaccess contrôle l’accès aux fichiers d’un répertoire. Il est en quelque sorte un gardien de votre site web. C’est lui qui décide qui a le droit d’entrer et ce qu’ils sont autorisés à faire.

Un fichier .htaccess est généralement inclus par défaut lors de votre installation du CMS WordPress. L’objectif principal de l’intégration de ce fichier est d’améliorer la sécurité et les performances.

Il vous permet toutefois bien plus, notamment de modifier les paramètres de votre serveur web. Vous trouverez normalement votre fichier .htaccess dans le répertoire racine de votre site (public_html).

La configuration du fichier .htaccess affectent l’ensemble de votre site WordPress. Ils s’appliquent à la fois à son propre répertoire et à tous les sous-répertoires dans ce dossier principal.

Il est aussi important de noter que le fichier .htaccess n’a aucune extension de fichier. Le point au début est seulement là pour assurer que le fichier reste caché.

9 usages courants du fichier .htaccess d’un site WordPress

Maintenant que vous savez ce qu’est le fichier .htaccess, il est temps de voir comment vous en servir.

Nous allons vous présenter quelques manières de facilement augmenter la sécurité et les performances de votre site en éditant ce fichier.

N’oubliez pas de créer une sauvegarde avant de commencer! Utilisez ensuite simplement les extraits de code que nous vous fournissons ci-dessous pour activer les fonctions désirées.

1. Refuser l’accès à certaines parties de votre site

L’un des usages les plus courant du fichier . htaccess est de refuser l’accès à certaines pages et certains fichiers d’un site.

Il y a quelques fichiers critiques qu’il est recommandé de cacher de cette façon pour des raisons de sécurité. On peut notamment penser à votre fichier wp-config.php.

Vous pouvez le faire en ajoutant le code suivant. Celui-ci fera apparaître une page d’erreur 404 à quiconque tente d’accéder au fichier :

<Files ~ "/wp-config.php">
Order Allow,Deny
Deny from All
</Files>

Quand des données sensibles doivent être cachées, il est recommandé de restreindre l’accès au répertoire correspondant.

Comme de nombreux sites WordPress utilisent la même structure de dossiers, cette configuration peut rendre votre site vulnérable.

Si vous ajoutez la ligne suivante, elle désactivera la fonctionnalité de liste de répertoire par défaut :

Options -Indexes

Cela empêchera les internautes et les robots de voir la structure de votre répertoire. Si quelqu’un tente d’y accéder, il obtiendra plutôt une page d’erreur 403.

2. Redirection des URL: un des usages courants du fichier .htaccess d’un site WordPress

Créer des redirections vous permet d’envoyer automatiquement les utilisateurs vers une page spécifique. Elles peuvent être particulièrement utiles si une page a été déplacée ou supprimée.

Elles servent aussi quand vous voulez que les utilisateurs qui tentent d’accéder à une page données soient emmenés ailleurs.

Vous pouvez créer des redirections avec via cPanel ou avec un plugin WordPress comme Redirection. Il est aussi possible de le faire en éditant le fichier .htaccess.

Pour créer une redirection, utilisez le code suivant :

Redirect /ancienfichier.html http://www.exemple.com/nouveaufichier.html

Vous avez sans doute déjà compris la structure de la commande. La première partie est le chemin vers l’ancien fichier. La seconde est, pour sa part, l’URL vers laquelle vous souhaitez rediriger les visiteurs.

3. Forcez votre site à charger en toute sécurité avec HTTPS

Si vous avez ajouté un certificat SSL à votre domaine, il est recommandé de forcer votre site à charger en utilisant le protocole HTTPS. Celui-ci rend votre site plus sûr pour vous et pour vos visiteurs.

Vous pouvez le faire en ajoutant simplement le code suivant au fichier .htaccess:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Votre site assurera automatiquement la redirection de toutes les requêtes HTTP vers HTTPS. Par exemple, si un utilisateur tente d’accéder à http://www.exemple.com, il sera redirigé vers https://www.exemple.com.

4. Modification des paramètres de mise en cache

La mise en cache du navigateur est un processus lors duquel certains fichiers du site sont temporairement enregistrés sur l’appareil local d’un visiteur. Cela permet au contenu de se charger plus rapidement.

Via le fichier .htaccess, vous pouvez modifier la durée de stockage de vos fichiers dans le cache du navigateur (avant qu’ils soient mis à jour).

Il y a plusieurs façons de faire pour modifier cette durée. Pour cet exemple, nous utiliserons une fonction appelée mod_headers.

Le code suivant permet de changer le temps de cache maximum de tous les fichiers jpg, jpeg, png et gif :

<ifModule mod_headers.c>
<filesMatch "\\.(jpg|jpeg|png|gif)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>

La durée maximale dans cet exemple a été fixée à 2 592 000 secondes, ce qui équivaut à 30 jours. Vous pouvez modifier cette durée si vous le souhaitez, tout comme les extensions de fichier affectées.

Vous pouvez ajouter différents paramètres pour différentes extensions de fichiers. Pour ce faire, ajoutez simplement plusieurs fonctions mod_header avec des paramètres différents.

5. Prévenir certaines attaques par injection

Les attaques par injection de code sont des tentatives de modifier la façon dont un site web ou une application s’exécute en ajoutant du code.

Par exemple, un pirate peut ajouter un script à un champ de texte de votre site, puis le soumettre. Dans certains cas, cela pourrait amener votre site internet à exécuter le script.

Pour vous protéger contre certains types d’injection de script, vous pouvez ajouter le code suivant dans votre fichier .htaccess:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{QUERY_STRING} (\<|%3C).script.(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

Votre site devrait maintenant pouvoir détecter et arrêter la plupart des tentatives d’injection de script. Il redirigera alors le coupable vers votre page index.php.

Il est toutefois important de noter que ce code particulier ne protège pas contre tous les types d’attaques par injection.

Bien qu’il peut certainement être utile, vous ne devriez pas compter sur lui pour être votre seule protection contre ce type d’attaque.

6. Arrêter les attaques par énumérations des noms d’utilisateur

L’énumération des noms d’utilisateur est un processus durant lequel les noms des utilisateur de votre site sont récoltés en consultant la page d’auteur de chaque utilisateur.

C’est d’autant plus problématique si quelqu’un parvient à trouver votre nom d’utilisateur administrateur. Ce rend beaucoup plus facile la tâche d’accéder à votre site.

Vous pouvez aider à prévenir les attaques par énumération des noms d’utilisateur en ajoutant le code suivant :

RewriteCond %{REQUEST_URI} !^/wp-admin [NC]
RewriteCond %{QUERY_STRING} author=\d
RewriteRule .* - [R=403,L]

Ce code bloquera certaines tentatives d’attaques par énumération des noms d’utilisateur. Les pirates accèderont alors à une simple page d’erreur 403.

Notez bien que cela n’empêchera pas toutes possibilités d’attaques par énumération. Vous devriez prendre des mesures de sécurité supplémentaires.

Nous vous recommandons donc de renforcer davantage la sécurité de votre page de connexion en mettant en place une authentification à plusieurs facteurs.

7. Empêcher le hotlinking des images est l’un des usages du fichier .htaccess d’un site WordPress

Le hotlinking d’images est un problème courant sur le web. Il survient lorsque des images sur votre serveur sont affichées sur un autre site.

Certains sites se servent de ce procédé pour parasiter la bande passante d’autres sites web. Ils peuvent ainsi utiliser les ressources de votre hébergement web pour le chargement de leurs images.

Vous pouvez empêcher le hotlinking de votre contenu en ajoutant le code suivant au fichier .htaccess:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://(www.)?example.com/.*$ [NC]
RewriteRule .(png|gif|jpg|jpeg)$ https://www.example.com/wp-content/uploads/hotlink.gif [R,L]

Remplacez bien sûr exemple.com par votre propre nom de domaine. Ce code empêchera le chargement de vos images sur tous les autres sites web, et même un peu plus.

Au lieu de l’image désirée, ces sites chargeront l’image que vous spécifiez sur la dernière ligne du code. Vous pouvez l’utiliser pour envoyer un message aux sites qui tentent de parasiter les ressources de votre serveur.

Prenez notes que ce code peut causer des problèmes si vous souhaitez que les images apparaissent hors de votre site, comme sur les moteurs de recherche.

Vous pouvez aussi choisir de lier un script plutôt qu’une image statique. Vous pouvez aussi choisir une image filigranée ou contenant une annonce de votre marque.

8. Contrôlez vos extensions de fichiers

En utilisant le fichier .htaccess, vous pouvez contrôler de quelles manières les fichiers de différentes extensions sont chargés par votre site web.

Cette fonctionnalité offre de très nombreuses possibilités, comme exécuter des fichiers comme PHP. Nous allons nous contenter de vous montrer un exemple de base.

Le code suivant supprimera automatiquement l’extension de fichier des fichiers PHP au moment de leur chargement.

Vous pouvez bien sûr l’utiliser avec n’importe quel type de fichier. Dans ce cas, vous devez remplacer toutes les instances de « php » par l’extension que vous voulez :

RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.index\ HTTP/ RewriteRule ^(.)index$ http://example.com/$1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/$ http://example.com/$1 [L,R=301]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.+).php\ HTTP/
RewriteRule ^(.+).php$ http://example.com/$1 [L,R=301]
RewriteRule ^([a-z]+)$ /$1.php [L]

Le code fera charger tous les fichiers PHP en retirant l’affichage de leur extension dans l’URL. Par exemple, le fichier index.php apparaîtra simplement sous le nom index.

9. Forcer le téléchargement des fichiers

Lorsqu’un fichier est ciblé par une requête sur votre site, la réponse par défaut est de l’afficher dans le navigateur.

Par exemple, si votre site contient un fichier audio, il jouera dans le navigateur plutôt que d’être téléchargé sur l’ordinateur du visiteur.

Vous pouvez changer la réponse par défaut et forcer le site à plutôt télécharger le fichier. Cela peut être fait en ajoutant le code suivant au fichier .htaccess:

AddType application/octet-stream mp3

Dans cet exemple, nous avons utilisé des fichiers mp3. Vous pouvez bien sûr utiliser la même fonction pour n’importe autre extension pertinente (txt, mov, etc.).

Pour conclure sur les usages du fichier .htaccess d’un site WordPress

les usages courants du fichier .htaccess d'un site WordPress

Le fichier de configuration .htaccess permet de sécuriser votre site web, augmenter ses performances et bien d’autres choses encore.

En ajoutant quelques lignes de code dans ce fichier, vous pouvez facilement exploiter ses multiples fonctionnalités.

Nous espérons que la lecture de cet article vous a plu et que nos conseils vous ont aidé à comprendre les différents usages du fichier .htaccess d’un site WordPress.

Si c’est le cas, nous vous invitons à consulter nos autres autres articles et tutoriels. Vous y trouverez une foule de conseils et d’informations utiles à propos de WordPress et la création de sites web.

Si vous êtes à la recherche d’un hébergement web pour votre site WordPress, nous vous invitons à consulter les offres d’Ex2. Nos plans d’hébergement WordPress vert sont très complètes et performantes, incluant tout ce dont votre site a besoin pour réussir.

Olivier

Olivier est un blogueur et développeur web expérimenté. Il créé et gère des sites WordPress depuis plus de 12 ans, et possède plus d'une décennie d'expérience en tant que rédacteur web.