当前位置:Gxlcms > PHP教程 > 关于图片防盗链有关问题

关于图片防盗链有关问题

时间:2021-07-01 10:21:17 帮助过:10人阅读

关于图片防盗链问题
测试地址是:http://127.0.0.2/test.html

.htaccess

RewriteEngine on
RewriteCond %{HTTP_REFERER} ^http://127.0.0.2/.*$ [NC]
RewriteRule .*\.(gif|jpg|png)$ http://127.0.0.2/22.jpg [R,NC]


来自本站的图片全部定向到22.jpg去,但上面这么写不能显示图片。
在chrome下测试,总共有23次Request,其中test.html和11.png各一次;22.jpg这张图21次,前20次状态码都是302 found,最后一次是下面截图这样:


为什么是这样?
------解决方案--------------------
死循環重定向了。
防盜鏈應該不是自己站點的域名才需要跳轉到22.jpg,而自己站點的則不需要跳轉才對啊。

改成這樣試試

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://127\.0\.0\.2/.*$ [NC]
RewriteRule \.(gif
------解决方案--------------------
jpg
------解决方案--------------------
png)$ http://127.0.0.2/22.jpg [R=301,L]

------解决方案--------------------
http://127.0.0.2/22.jpg 也會匹配^http://127.0.0.2/.*$ 所以會死循環
如果想不死循環,
http://127.0.0.2/22.jpg [R,NC] 改成 [R=301,L] 試試
------解决方案--------------------
死循环 要防盗链的图片放在目录里面 设置那个目录就可以了 你这样设置所有的图片 又重定向到另外的图片 这不是自己玩自己吗?

人气教程排行