禁止别的网站链接你的图片

时间:2020-02-23 14:45:21  来源:igfitidea点击:

如何防止图片盗链
本文是关于阻止这些热链接您的图像,窃取它们和您的带宽的站点!我假设您正在将Apache作为Web服务器运行,并且具有httpd.conf,htaccess和重写规则的一些基本知识。

您有两种选择,可以将规则直接放在httpd.conf虚拟主机中,也可以放在Apache配置文件(众所周知的.htaccess)中。
如果使用httpd.conf方式,则可以忽略第一步。

首先,确保您的虚拟主机允许htaccess使用(在httpd.conf中):

AccessFileName .htaccess
<Directory "/path/to/vhost">
AllowOverride All
Options SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

现在,将这些重写规则添加到您的配置文件(httpd.conf或者htaccess)中:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?theitroad.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$http://public.theitroad.com/images/hotlinking_denied.jpg [NC,R,L]

好的,让我们对此进行一点解释...下一行包含有权调用图像的URL(必须列出您自己的!用您自己的域替换" theitroad.com")。
您可以添加任意多个允许的URL,只需复制行和域即可。

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?theitroad.com [NC]

最后一行包含返回这些盗窃者的图像……他们的站点将显示此图像,而不是他们尝试链接的图像(同样,用您自己的URL /路径替换):

RewriteRule \.(jpg|jpeg|png|gif)$http://public.theitroad.com/images/hotlinking_denied.jpg [NC,R,L]

*确保要显示的图像未包含在您要保护的URL中。
无限循环有望!