Outil gratuit

Expliquez-moi ce .htaccess

RewriteCond, [L,R=301,NC], FilesMatch… Le .htaccess règle une bonne partie du comportement d'un site, et presque personne ne sait le lire. Collez le vôtre : nous l'expliquons ligne par ligne, et nous signalons ce qui ressemble à un piratage.

Le fichier se trouve à la racine du site (souvent public_html ou httpdocs). Son nom commence par un point : dans le gestionnaire de fichiers ou votre logiciel FTP, activez l'affichage des fichiers cachés.

Exemples

🔒 Le fichier est lu par votre navigateur et n'est envoyé nulle part.

À quoi sert un .htaccess ?

Sur les serveurs Apache et LiteSpeed, ce petit fichier texte fixe les règles de son dossier et de tous ses sous-dossiers : redirections, HTTPS, cache, accès, pages d'erreur.

WordPress y écrit son propre bloc, et bien des extensions (cache, sécurité, SSL) y ajoutent le leur, encadré par des commentaires # BEGIN et # END. Une seule faute de frappe et tout le site affiche une erreur 500 : gardez une copie avant toute modification. Sur un serveur nginx, le fichier est ignoré.

Lire une règle de réécriture

RewriteCond

Les conditions

« Si telle variable du serveur correspond à tel motif ». Plusieurs conditions de suite doivent toutes être vraies, sauf si elles finissent par [OR].

Elles ne valent que pour la RewriteRule qui les suit.

RewriteRule

La règle

Un motif pour l'adresse demandée, une destination, puis des drapeaux entre crochets.

$1, $2 reprennent les morceaux capturés entre parenthèses ; %1, ceux de la dernière condition.

[L,R=301,NC]

Les drapeaux

L on s'arrête là, R=301 redirection permanente, NC sans tenir compte des majuscules, QSA on garde les paramètres.

Chaque drapeau est expliqué dans le résultat.

À quoi ressemble un .htaccess piraté

Les pirates adorent ce fichier : quelques lignes suffisent pour détourner le trafic ou garder une porte ouverte, et personne ne le lit. Les motifs que nous signalons :

  1. Les redirections sélectivesSeuls les visiteurs qui arrivent de Google, ou sur téléphone, sont envoyés vers un autre site. Le propriétaire, qui tape directement l'adresse, ne voit rien.
  2. Du PHP là où il n'a rien à faireAddHandler ou SetHandler qui font exécuter des fichiers .jpg ou .ico comme du PHP, auto_prepend_file qui lance un fichier inconnu avant chaque page.
  3. La porte verrouilléeUn bloc <FilesMatch ".(py|exe|php)$"> qui interdit tous les fichiers PHP, suivi d'une liste de fichiers permis aux noms bizarres : seuls les scripts du pirate fonctionnent encore.
  4. Les ajouts dans le bloc WordPressDes lignes glissées entre # BEGIN WordPress et # END WordPress, là où personne ne regarde.

Si une ligne est signalée : ne vous contentez pas de l'effacer. Le pirate a en général laissé d'autres fichiers (un .htaccess piraté est souvent réécrit dans les minutes qui suivent). Changez tous les mots de passe (hébergement, FTP, WordPress, base de données), mettez tout à jour, et idéalement faites nettoyer le site. Notre outil Site signalé dangereux ? vous dit si Google s'en est aperçu.