-->

如何保护图像被热链接?(How to protect images from being hotli

2019-11-01 02:34发布

我曾尝试下面的代码htaccess的从被热链接停止我的图片,但它不工作。

SetEnvIfNoCase Referer "^http://www.example.com/" locally_linked=1
SetEnvIfNoCase Referer "^http://www.example.comm$" locally_linked=1
SetEnvIfNoCase Referer "^http://example.com/" locally_linked=1
SetEnvIfNoCase Referer "^http://example.com$" locally_linked=1
SetEnvIfNoCase Referer "^$" locally_linked=1
<FilesMatch "\.(gif|png|jpe?g|css|js)$">
  Order Allow,Deny
  Allow from env=locally_linked=1
</FilesMatch>

任何人都可以帮我如何防止盗链?

Answer 1:

这将显示一个固定的图像,只要其热链接。 (这种形象可能有盗链在不允许的消息...)

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain\.com [NC]
RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L]

它检查Refererr也并非一无是处,而引用者不匹配的mydomain然后将其与图像响应nohotlink.jpg

要了解盗链更好的预防看到这些SO主题:
阿帕奇的.htaccess盗链重定向
Apache的防盗链的下载文件夹
基础教程http://altlab.com/htaccess_tutorial.html



Answer 2:

这不允许盗链,除非引用者是从什么example.com

SetEnvIf Referer example\.com localreferer
<FilesMatch \.(jpg|png|gif|css|js|pdf|doc|xls|txt)$>
    Order deny,allow
    Deny from all
    Allow from env=localreferer
</FilesMatch>


文章来源: How to protect images from being hotlinked?