Prevent hotlinking image files

2019-02-27 10:27发布

问题:

I want to avoid hotlinking images. Basing of this answer: stackoverflow answer I've tried to add the next snippet code into .htaccess file:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?itransformer.es/.*$ [NC]
RewriteRule \.(gif|jpe?g|png|wbmp)$ htttp://itransformer.es [R,L]

but it is not working. When I try to access the images putting the path in the navigation bar, I can access. What am I doing wrong?

回答1:

You're explicitly ignoreing referers that are blank. When you type the URL in your navigation bar, there is no referer, therefore %{HTTP_REFERER} is blank and it will fail the !^$ pattern. Try this instead:

RewriteCond %{HTTP_REFERER} ^$ [OR]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?itransformer.es/.*$ [NC]
RewriteRule \.(gif|jpe?g|png|wbmp)$ http://itransformer.es [R,L]

Also, you have an extra "t" in your htttp://