Accueil > Divers > Se protéger contre le Hotlinking
Se protéger contre le Hotlinking
samedi 10 juin 2017, par
Comment se protéger du Hotlinking, vol d’image et de bande passante, notamment sous WordPress
En utilisant SEObserver j’ai découvert que des sites, souvent du genre blackhat (cheapcigarettesc.info/gallerydpics-dagobert-ier.htm), utilisaient des images en provenance de mes sites.
Ici nous ne sommes pas dans le cas du Balcon des Alpilles Vol d’images sur internet et droit d’auteur mais plutôt sur des webmasters qui affichent des images en provenance directe de mes serveurs.
Je me suis penché sur la question du Hotlinking, pour ne retenir que 3 solutions.
1 - StopBadBots
https://fr.wordpress.org/plugins/stopbadbots/
2 - CloudFlare
Les étapes après inscription sur CloudFlare :
1- https://www.cloudflare.com/a/add-site
2 - Je n’ai gardé que A et www (il suffit de cliquer sur le petit nuage)
3- Choisir son plan (Free pour commencer)
4- Se rendre chez son hébergeur et modifier les DNS, attendre la propagation.
5- Aller sur l’onglet Scrape Shield et mettre le bouton Hotlink Protection sur ON
En crypto suis en Full (strict), le site étant hébergé chez Gandi avec son propre certificat SSL.
Une fois le changement effectué il vous faudra, si vous utilisez WP Rocket, vous rendre dans l’onglet CDN et "Activer l’onglet de réglages CloudFlare", puis renseigner les champs E-mail CloudFlare et Clé API globale.
Par contre si vous utilisez un système extérieur d’optimisation d’images il faudra peut être :
– Aller sur l’onglet Scrape Shield et mettre le bouton Hotlink Protection sur OFF
– Aller sur l’onglet Firewall et Browser Integrity Check sur OFF
CloudFlare et Wp Rocket
– The Ideal WP Rocket Settings With Cloudflare + MaxCDN Instructions
Voici ce que cela donne avec WP Rocket Settings With Cloudflare sans MaxCDN.

Error 500 wp-admin cloudflare
Si vous rencontrez des problèmes de connexion pour WordPress il vous faudra peut être ajouter une Page Rule.

PS : étant confronté à une erreur 500 une fois connecté, j’ai trouvé la solution en consultant les logs.
La mise à jour du thème avait planté l’admin wp-content/themes/genesis/lib/functions/upgrade.php on line 604.
Un upload manuel a solutionné le bug.
3- dans le .htaccess
#HOTLINKING
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?ndd.tld [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?bing.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yahoo.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|svg)$ https://www.ndd.tld/votreimagequipueoupas.jpg [NC,R,L]
#HOTLINKING FIN
Cela affiche soit l’image que vous leur donnez, soit la petite icone qui signifie qu’il y a un problème de chemin
Si les images dans les articles ne s’affichent pas :
UPDATE wp_posts
SET post_content =
REPLACE (post_content, 'src="http://www.site.com/wp-content/uploads/', 'src="https://www.site.com/wp-content/uploads/');