Créa-blog

#100JoursPourCoder
Projet Créa-code

Ressources pour développeur web

Théme de la semaine : Le fichier .htaccess

Bloquer le hotlinking et protéger ses images avec .htaccess

Temps de lecture estimé : 8 minutes
Accueil Sécurité Bloquer le hotlinking et protéger ses images avec .htaccess

Lorsque vous mettez du temps, du cœur et parfois même un peu de sueur à créer un site web, vous avez envie qu’il fonctionne vite, qu’il soit propre, et surtout qu’il respecte vos efforts. Pourtant, sans même le savoir, certaines personnes peuvent profiter de vos images et de votre bande passante sans rien vous demander. C’est ce qu’on appelle le hotlinking, un mot un peu barbare mais qui cache une réalité très simple… et souvent agaçante : l’affichage des vos images depuis votre serveur !

  • Comprendre enfin ce qu’est vraiment le hotlinking et pourquoi il peut ralentir un site ou faire perdre des ressources.
  • Savoir comment protéger efficacement ses images grâce au fichier htaccess sans être expert technique.
  • Gagner en sérénité en sécurisant son WordPress et en gardant le contrôle sur l’utilisation de ses visuels.

Il n’y a rien de pire que d’optimiser votre site, de payer un hébergement, de faire attention à chaque détail, et de découvrir que d’autres sites affichent vos images directement depuis votre serveur. Votre bande passante fond, vos performances baissent, et en prime, votre travail sert à quelqu’un d’autre gratuitement. Heureusement, il existe une solution élégante, efficace et relativement simple à mettre en place grâce au fichier .htaccess.

Dans ce guide, nous allons prendre le sujet depuis zéro. Vous allez comprendre ce qu’est vraiment le hotlinking, pourquoi il pose problème, comment fonctionne le fameux .htaccess, et surtout comment l’utiliser pour bloquer proprement le hotlinking sur votre site WordPress ou tout autre site hébergé sous Apache.

Comprendre le hotlinking : Qu’est-ce que le Hotlinking ?

Le hotlinking consiste à afficher une image ou une ressource qui se trouve sur un autre site en utilisant directement son URL. Autrement dit, au lieu de télécharger l’image et de l’héberger sur son propre serveur, une personne va simplement coller le lien direct vers votre fichier. L’image apparaît chez elle, mais elle est chargée depuis chez vous. Cela peut paraitre anodin au début, mais dans la réalité, c’est tout sauf anodin.

Chaque fois qu’un visiteur de ce site regarde cette image, c’est votre serveur qui travaille. C’est votre bande passante qui est consommée. Plus l’autre site a du trafic, plus cela peut devenir lourd pour vous. Et bien sûr, cela se produit sans autorisation, sans remerciement et sans aucune contrepartie.

Pour mieux comprendre, imaginez une situation du quotidien. Vous avez une borne d’eau sur votre terrain. Votre voisin trouve l’eau très bonne, alors au lieu d’installer la sienne, il tire un tuyau directement chez vous et remplit tranquillement sa piscine. C’est exactement le hotlinking, mais version web.

Pourquoi le hotlinking est un vrai problème pour votre site

Le premier problème du hotlinking est technique. Votre serveur doit répondre à des requêtes supplémentaires qui ne sont même pas destinées aux visiteurs de votre propre site. Quand cela arrive rarement, ce n’est pas dramatique. Mais si plusieurs sites commencent à faire cela, ou si un gros site le fait, votre hébergement peut ralentir, voire saturer. Les pages mettent alors plus de temps à se charger et l’expérience utilisateur se dégrade.

Le second problème est économique. Vous payez pour votre hébergement. Vous financez donc la bande passante consommée par d’autres. C’est un peu comme payer l’électricité de tout l’immeuble sans le savoir.

Le troisième problème touche à vos droits. Vos images vous appartiennent. Vous avez peut-être passé du temps à les créer, les retoucher, les cadrer, ou les trouver légalement. Les voir utilisées ailleurs sans autorisation peut être frustrant, voire juridiquement discutable.

Et enfin, il y a un aspect plus subtil. Si l’autre site supprime la page ou modifie l’image, votre travail peut être déformé ou détourné. Certains propriétaires excédés remplacent même l’image hotlinkée par des images moqueuses.

Le fichier .htaccess : un allié discret mais redoutablement efficace

Avant de bloquer le hotlinking, il faut comprendre avec quoi nous allons travailler : le fichier .htaccess. Ce petit fichier, souvent invisible à première vue, se trouve à la racine de votre site lorsqu’il est hébergé sur un serveur Apache. Il sert à donner des règles particulières au serveur : redirections, sécurité, gestion des URL, et bien sûr protection contre le hotlinking.

Il fonctionne comme un gardien à l’entrée de votre site. Chaque fois qu’une requête arrive, il peut vérifier d’où elle vient, ce qu’elle demande, et décider quoi faire. C’est précisément grâce à cela que l’on peut empêcher d’autres sites de charger vos images directement.

Si vous êtes sur un hébergement mutualisé ou un WordPress classique, vous avez quasiment toujours un fichier .htaccess. Il est parfois un peu intimidant la première fois qu’on le voit, mais rassurez-vous, on va avancer progressivement et tout sera clair.

Exemple simple pour visualiser le hotlinking

Imaginons un cas très simple. Vous avez une image sur votre site, par exemple :
https://votresite.fr/wp-content/uploads/2025/01/image.jpg

Une autre personne écrit dans son code HTML quelque chose comme :

<img src="https://votresite.fr/wp-content/uploads/2025/01/image.jpg" alt="Belle image">

Elle affiche l’image sur son site, mais en réalité, c’est votre serveur qui l’envoie à chaque visiteur. Voilà, vous venez de vivre du hotlinking.

Bloquer le hotlinking avec .htaccess : première règle simple

Pour empêcher cela, on peut ajouter une règle dans le fichier .htaccess situé à la racine de votre site. Voici un exemple classique qui bloque les sites extérieurs et autorise uniquement votre domaine :

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://votresite.fr/ [NC]
RewriteCond %{HTTP_REFERER} !^https://www.votresite.fr/ [NC]
RewriteRule \.(jpg|jpeg|png|gif|webp)$ - [F,NC,L]

Cette règle vérifie le site d’origine du chargement de l’image. Si ce n’est pas votre domaine, l’accès est refusé et l’image ne s’affiche pas.

Comprendre la règle .htaccess pour bloquer le hotlinking

La règle .htaccess ci-dessus bloque le hotlinking pour toutes vos images. Mais pour bien l’utiliser, il est important de comprendre ce qu’elle fait réellement, car cela vous évite les erreurs et vous rend autonome.

RewriteEngine On

La première ligne active tout simplement le moteur de réécriture. Elle permet au serveur de comprendre que vous allez poser des conditions spéciales. Ensuite, les lignes suivantes vérifient l’origine de la requête. Le serveur regarde d’où vient la demande de l’image. Si elle vient de votre site, alors il laisse passer. Si elle vient de n’importe où ailleurs, il refuse.

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://votresite.fr/ [NC]
RewriteCond %{HTTP_REFERER} !^https://www.votresite.fr/ [NC]

Le HTTP_REFERER correspond en quelque sorte à la “carte d’identité” du site qui demande l’image. Lorsque quelqu’un affiche votre image depuis son propre site, le serveur voit que la requête vient d’une URL externe et applique la règle.

RewriteRule \.(jpg|jpeg|png|gif|webp)$ - [F,NC,L]

Enfin, la dernière ligne définit ce qui est protégé. Ici, ce sont les fichiers jpg, jpeg, png, gif et webp. Vous pouvez bien sûr ajouter d’autres formats si besoin.

Ce qui est intéressant avec cette protection via .htaccess, c’est qu’elle agit directement au niveau du serveur. Cela signifie qu’elle agit avant même que WordPress, PHP ou quoi que ce soit d’autre n’entre en jeu. C’est rapide, efficace et propre.

Remplacer les images volées par une autre image : une petite touche de satisfaction

Bloquer le hotlinking, c’est bien. Mais parfois, on a envie d’aller un peu plus loin et d’envoyer un petit message sympathique aux personnes qui volent votre bande passante. Au lieu de simplement bloquer l’image, vous pouvez choisir d’en afficher une autre.

Cela signifie que si quelqu’un essaie de charger votre image depuis son site, il verra une autre image de votre choix. Cela peut être un message d’avertissement, une image humoristique, ou un visuel indiquant clairement que le hotlinking n’est pas autorisé.

Voici une règle typique pour faire cela :

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://votresite.fr/ [NC]
RewriteCond %{HTTP_REFERER} !^https://www.votresite.fr/ [NC]
RewriteRule \.(jpg|jpeg|png|gif|webp)$ https://votresite.fr/images/no-hotlinking.jpg [R,L]

Cette fois, au lieu de bloquer le hotlinking, vous redirigez l’image vers une autre. Sur votre site, tout s’affiche normalement. Mais ailleurs, les “voleurs” voient votre image de remplacement. C’est simple, efficace, et parfois très satisfaisant.

Comment activer la protection anti-hotlinking sur WordPress

Si vous utilisez WordPress, la bonne nouvelle, c’est que tout ce que nous venons de voir fonctionne parfaitement. WordPress utilise un fichier .htaccess par défaut pour gérer les permaliens, mais vous pouvez tout à fait ajouter vos propres règles.

La première étape consiste à accéder au fichier .htaccess. Il se trouve à la racine de votre site, c’est-à-dire à l’emplacement où se trouvent les dossiers wp-admin, wp-content et wp-includes. Pour y accéder, vous pouvez utiliser un client FTP comme FileZilla, ou le gestionnaire de fichiers proposé par votre hébergeur.

Formation web et informatique - Alban Guillier - Formateur

Des formations informatique pour tous !

Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…

Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.

Découvrez mes formations Qui suis-je ?

Ensuite, vous ouvrez le fichier avec un éditeur de texte. Vous verrez probablement déjà quelques lignes générées par WordPress. Il suffit d’ajouter vos règles anti-hotlinking au-dessus ou en dessous, en faisant très attention à ne rien supprimer d’existant.

Une fois cela fait, vous enregistrez le fichier et vous le renvoyez sur le serveur. La protection est active immédiatement. Il n’y a pas besoin de plugin, pas besoin de réglages supplémentaires. C’est propre et performant.

Certaines personnes préfèrent passer par des extensions WordPress de sécurité ou de performance, car elles n’aiment pas toucher au .htaccess. C’est une option, bien sûr, mais la méthode manuelle reste la plus légère et la plus fiable.

Un exemple visuel simple pour mieux comprendre

Imaginons maintenant une petite scène très concrète. Vous avez un site WordPress qui parle de développement web ou de photographie. Vous passez du temps à préparer vos visuels. Un autre site tombe dessus, trouve vos images jolies et décide de les afficher directement chez lui, en collant l’URL de vos fichiers.

Sans protection htaccess, son site affiche vos images comme si elles lui appartenaient. Vos ressources sont utilisées, votre bande passante aussi, et votre serveur travaille pour lui.

Avec une protection anti hotlinking activée, la situation change totalement. Son site essaie toujours d’afficher votre image, mais cette fois, c’est votre .htaccess qui prend la décision. Soit il bloque, et son site affiche une image cassée. Soit vous avez choisi la version “image de remplacement”, et son site affiche votre message. Dans les deux cas, il comprend vite que vous ne vous laissez pas faire.

Quelques précautions importantes avant d’activer le blocage

Même si la solution htaccess contre le hotlinking est puissante, il faut être prudent. Première chose à vérifier : autorisez bien vos propres domaines. Par exemple, si vous avez un site avec www et sans www, vous devez autoriser les deux. Si vous avez un sous-domaine, pensez également à l’ajouter.

Deuxième attention à porter : certains services externes légitimes peuvent avoir besoin d’accéder à vos images. Cela peut être un CDN, un service d’analyse ou même certaines plateformes sociales. Dans ces cas-là, il suffit d’autoriser leur referer dans vos règles.

Enfin, gardez toujours une sauvegarde de votre fichier .htaccess avant modification. C’est une bonne habitude à prendre, pas seulement pour lutter contre le hotlinking, mais pour toutes vos interventions techniques.

Le hotlinking, le htaccess et la performance globale de votre site

Ce qui est intéressant avec cette mesure, c’est qu’elle ne sert pas uniquement à protéger votre travail. Elle améliore aussi indirectement les performances de votre site. Moins de requêtes parasites, c’est moins de charge serveur, donc un site plus fluide pour vos vrais visiteurs.

Dans un web où la vitesse de chargement influence le référencement, l’expérience utilisateur et parfois même la crédibilité, chaque optimisation compte. Le hotlinking peut sembler un détail, mais chez certains sites, il peut représenter un vrai poids invisible. Le htaccess devient alors un allié précieux, discret, mais essentiel.

Comment vérifier si on est victime de hotlinking ?

Peut-on voir le hotlinking dans Google Search Console ? Non.
Search Console analyse le trafic Google vers votre site et la manière dont Google voit vos pages. Le hotlinking, lui, ne concerne pas Google mais d’autres sites qui chargent directement vos images. Donc :

  • Search Console ne montre pas les sites qui affichent vos images
  • elle ne liste pas les requêtes d’images externes
  • elle ne permet pas d’identifier la bande passante consommée par d’autres

Elle peut éventuellement aider indirectement si vous voyez vos images indexées sur d’autres domaines, mais ce n’est pas une vraie preuve et ce n’est pas fiable.

Peut-on voir le hotlinking dans Google Analytics / GA4 ? Encore une fois, non.
GA4 ne mesure que les visiteurs qui passent par VOTRE site. Si vos images sont chargées sur un autre site, les visiteurs restent sur ce site externe et ne déclenchent aucune donnée Analytics chez vous. Donc pas de trace dans GA4 :

  • pas d’événements
  • pas de pages vues
  • pas de trafic référent

Comment savoir réellement si vous subissez du hotlinking ?

La méthode la plus fiable : les logs serveur ! C’est la solution “propre”. Dans les logs d’accès Apache ou Nginx, on peut lire les HTTP_REFERER. Si vous voyez des requêtes vers vos images avec un referer qui n’est pas votre domaine, c’est clairement du hotlinking. Vous pouvez :

  • passer par le gestionnaire de fichiers de votre hébergeur
  • ou via FTP
  • ou via l’interface type cPanel / Plesk

Certains hébergeurs proposent même un outil “bandwidth usage” ou “hotlink protection stats”.

Pour aller lus loin : Analyser les logs d’un server web

Vous pouvez mettre en place un petit système de détection via .htaccess et temporairement loguer les referers suspects via une règle dédiée. Par exemple :

  • envoyer les accès d’images externes vers un fichier log spécial
  • ou vers une image personnalisée pour tester

Ça permet d’identifier qui vole vos fichiers avant de bloquer. En restant discret, vous pouvez uniquement détecter en utilisant le code F (forbidden).
Cela va :

  • refuser l’accès
  • laisser une trace dans vos logs serveur (access.log + error.log)
RewriteEngine On

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://votresite.fr/ [NC]
RewriteCond %{HTTP_REFERER} !^https://www.votresite.fr/ [NC]

RewriteRule \.(jpg|jpeg|png|gif|webp)$ - [F,NC,L]

Ensuite, vous allez consulter vos logs :

  • via FTP
  • ou via le panneau de votre hébergeur
  • généralement dans : /logs/ ou /var/log/apache/

Vous verrez :

  • le domaine qui a essayé d’afficher vos images
  • les fichiers concernés
  • la fréquence

C’est la méthode la plus propre pour une analyse sérieuse.

Regarder également les pics anormaux de bande passante. Si votre trafic ne monte pas mais votre hébergement consomme soudain énormément alors c’est très souvent du hotlinking (ou un bot agressif).

Pensez à rechercher vos images sur le web. Une méthodes simples et efficaces :

  • clic droit sur une image → recherche Google Images
  • upload de l’image dans Google Images ou Bing
  • utilisation de Yandex Images (souvent très performant)

Si vous voyez votre image affichée ailleurs avec une URL directe vers VOTRE site, vous avez votre preuve !


Le hotlinking peut paraître anecdotique lorsque l’on débute, mais il révèle rapidement à quel point un site web peut être exposé à des abus invisibles. Comprendre ce phénomène, savoir pourquoi il pose problème et apprendre à y répondre calmement, avec des outils simples comme le htaccess, c’est déjà franchir un cap dans votre maîtrise du web.

Vous avez désormais les clés pour protéger vos images, préserver votre bande passante et défendre votre travail. La beauté de cette solution, c’est qu’elle repose sur quelques lignes de configuration, mais qu’elle agit profondément et efficacement. C’est une petite action technique, mais avec un grand impact sur votre site et votre tranquillité.

À présent, vous êtes armé, rassuré, et surtout plus conscient de ce qui se passe vraiment en coulisses. Internet peut être un formidable terrain de partage, mais savoir poser des limites, comme avec le hotlinking, c’est aussi faire preuve de maturité numérique. Et honnêtement, cela fait du bien de savoir que votre serveur ne travaille plus pour les autres, mais seulement pour vous et vos visiteurs.