Que ce soit pour sécuriser un serveur web, définir des redirections ou désigner des pages d'erreur personnalisées, le fichier .htaccess s'avère être un outil indispensable. Derrière son appellation à la sonorité technique, il est en fait très facile à créer et offre alors de nombreuses possibilités de paramétrage sans avoir à modifier la configuration initiale du serveur.

Évaluez gratuitement votre site web et découvrez comment l'améliorer avec  Website Grader.

 

Comment fonctionne un fichier .htaccess ?

Le fichier .htaccess est soit créé par le propriétaire d'un site web, soit généré automatiquement. Dans le second cas, cela peut être du fait de l'hébergeur mais aussi du CMS installé, comme WordPress. En effet, à son installation celui-ci va générer un fichier .htaccess afin d'y inscrire ses règles d'écriture. Des extensions peuvent elles aussi générer le fichier .htaccess pour modifier les paramètres serveur. C'est par exemple le cas de Wordfence, une extension de sécurité, qui va générer un fichier à son installation afin d'interdire l'accès à certains dossiers, les IP de certains pays ou limiter le nombre de tentatives de connexion. Ainsi, via les règles édictées dans le fichier .htaccess, il est possible de changer le comportement du serveur comme pour forcer l'utilisation du protocole HTTPS qui permettra là encore de sécuriser le site.

 

Comment créer un fichier .htaccess ?

Créer un fichier .htaccess est très simple : il suffit de créer un fichier à la racine du serveur web et le nommer « .htaccess », ce qui signifie hypertext access. Des extensions peuvent aider les utilisateurs de CMS dans cette tâche mais la première technique est si facile qu'il serait dommage d'alourdir inutilement le site avec l'installation d'une nouvelle extension.

Avant de créer un fichier .htaccess, il faut vérifier qu'il n'a pas été automatiquement généré, comme c'est systématiquement le cas à l'installation de WordPress. En effet, s'il devait y avoir deux fichiers du même nom à la racine du serveur, alors il pourrait y avoir des problèmes de conflit qui nuiraient au bon fonctionnement du site web.

Comment analyser les performances de votre site web ?

Évaluez gratuitement la rapidité, la sécurité et l’optimisation mobile de votre site.

Astuces pour bien utiliser .htaccess

 

Optimiser les URL avec la réécriture

La réécriture des URL est l'une des principales fonctionnalités du fichier .htaccess qui permet alors d'imposer l'utilisation du HTTPS, avec un certificat SSL préalablement installé. Grâce à cette astuce, le site sera parfaitement sécurisé pour les internautes et bénéficiera d'une visibilité optimale. Car de plus en plus de moteurs de recherche, Google en tête, privilégient les résultats en HTTPS. Quant aux navigateurs web, certains vont jusqu'à bloquer les résultats en simple http, affichant alors un message d'alerte pour informer l'utilisateur que le site n'est pas sécurisé.

 

Configurer des redirections pour conserver le trafic

Avec le temps, certaines pages sont supprimées bien qu'elles soient encore référencées ou qu'elles bénéficient de liens sur d'autres sites web. Afin de ne pas perdre ces avantages, mais aussi pour éviter que les internautes tombent sur une page d'erreur 404, il est préférable de créer une redirection. Pour la créer via le fichier .htaccess, il suffit d'ajouter les lignes de code suivantes :

Redirect 301 /ancienne-url/

https://www.siteweb.fr/nouvelle-url/

 

Proposer des pages d'erreur personnalisées

Avec cette astuce, il est possible de rediriger le trafic des pages 404 vers des pages d'erreur personnalisées qui pourront contenir un message spécifique mais aussi des liens vers d'autres pages ou articles afin de conserver l'internaute sur le site et réduire le taux de rebond. Pour modifier la page qui sera affichée lors d'une erreur, il faut spécifier la ligne de code ci-dessous dans le fichier .htaccess :

ErrorDocument 404 /nouvelle-page-404.html

 

Protéger le site web contre les hotlinks

Les hotlinks sont des liens générés automatiquement par certains sites pour exploiter les ressources d'un autre. Par exemple, le site A va faire un lien vers une image du site B pour l'afficher sur son propre site. Il exploite donc les ressources du site B et nuit à sa bande passante, ce qui pourrait au final le ralentir. Pour éviter cela, il est possible d'interdire les liens vers les médias avec le code suivant :

# Bannir les hotlinks

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http:// www.site /.*$ [NC] [OR]

RewriteCond %{HTTP_REFERER} !^http://www.site /.*$ [NC] [OR]

RewriteRule .*\.(gif|GIF|jpg|JPG|bmp|BMP|wav|mp3|wmv|avi|mpeg)$ - [F]

 

Définir des restrictions d'accès

Cette astuce .htaccess liée à la sécurité du serveur web est l'une des plus intéressantes qu'offre ce fichier. Il est ainsi possible de restreindre l'accès au site à une IP spécifique mais aussi à des plages d'IP. Le propriétaire peut alors bannir un internaute qui essaie de pirater son site ou même un concurrent qui surveille ses évolutions. Le code suivant est alors à utiliser, en remplaçant les XXX par les bonnes valeurs numériques.

## USER IP BANNING

<limit get post="POST">

order allow,deny

deny from XXX.XXX.XXX.XXX

allow from all

</limit>

 

Protéger des dossiers par mot de passe

Certains propriétaires de sites web utilisent des dossiers sur leur serveur pour héberger des données sensibles ou des fichiers dont l'accès doit être limité. C'est par exemple le cas pour les supports de formation interne ou un tableur Excel partagé par l'équipe commerciale. Afin de protéger l'ensemble des éléments contenus dans un dossier, une astuce consiste à le verrouiller par mot de passe. Pour cela, il faut commencer par ajouter le code suivant dans le fichier .htaccess :

AuthType Basic

AuthName "Accès protégé"

AuthUserFile /usr/home/login/www/.htpasswd

require valid-user

Puis, dans le dossier à protéger, il faut créer un fichier .htpasswd en suivant la même méthode que pour le .htaccess et y inscrire les noms d'utilisateur et mots de passe de chaque personne y ayant accès. Par exemple, pour l'utilisateur « paul » dont le mot de passe est « password123 », la ligne de code prendra la forme suivante :

paul:password123

Évidemment, il est fortement recommandé de générer des mots de passe longs, variant les caractères, chiffres et symboles, de manière aléatoire afin de garantir la sécurité du procédé.

Communauté HubSpot

Pour aller plus loin, utilisez cet outil gratuit et évaluez les performances de votre site web en quelques secondes.


Publication originale le Sep 1, 2022 2:34:00 AM, mise à jour le 01 septembre 2022

Sujet(s):

Performance web