仅限某个网站的Hotlink预防

时间:2014-01-10 16:10:36

标签: .htaccess mod-rewrite

RewriteCond %{HTTP_REFERER} !^http://website.net/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://website.net$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.website.net/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.website.net$      [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp|rar)$ http://website.net/news.php [R,NC]

这是我目前使用的(从我的cPanel自动生成)。

我是否有办法仅从某个网站启用此热链接保护,例如site.com

或另一种选择是针对某些网站取消它 - trustedsite1.comtrustedsite2.com

这两个选项中的任何一个都很适合我。

1 个答案:

答案 0 :(得分:1)

阻止来自特定网站的热链接:

RewriteCond %{HTTP_REFERER} ^https?://site.com$      [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp|rar)$ http://website.net/news.php [R,NC]

要从trustedsite1和trustedsite2允许,只需添加其他条件:

RewriteCond %{HTTP_REFERER} !^http://website.net/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://website.net$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.website.net/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.website.net$      [NC]
RewriteCond %{HTTP_REFERER} !^http://trustedsite1.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://trustedsite2.com/.*$      [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp|rar)$ http://website.net/news.php [R,NC]