2006-12
26

这个话题似乎是老调重弹了,也有很多人给出了相应的方法。我的方法如下:

RewriteCond %{REQUEST_URI} !^/wp-includes/images/noimage.png$ [NC]
RewriteCond %{HTTP_REFERER} !^http://[0-9a-z]+\.inspiremedia\.org/.*$ [NC]
RewriteRule \.(jpg|gif|png|zip|gz|rar)$ http://tech.inspiremedia.org/wp-includes/images/noimage.png [R,L]

主要功能位于第二行,当请求的HTTP_REFERER头不输入本站所在的域时,则执行第三行的重写规则,重定向至 noimage.png。 第二行最后的[NC]表示匹配时忽略大小写。第一行用于防止死循环。

2006-12-26

接受建议,将重写规则仅适用于 wp-content/uploads 下的文件。

RewriteCond %{HTTP_REFERER} !^http://[0-9a-z]+\.inspiremedia\.org/.*$ [NC]
RewriteRule wp-content/uploads/.*\.(jpg|gif|png|zip|gz|rar)$ http://tech.inspiremedia.org/wp-includes/images/noimage.png [R,L]



这篇文章有 4 条评论了,快来一起讨论讨论吧!
#1
fcicq
2006-12-26 16:52

最顶上的图,和背景图,由于你这个防盗链,而输出了noimage.png.

#2
charlee
2006-12-26 17:34

谢谢,可是昨天我自己测试没有问题……先把这几个选项关掉了,回头再做

#3
fcicq
2006-12-26 19:22

总之偶觉得这种保护不应该过分全面…
另外,可能各浏览器的行为不太一样.

添加评论