在PHP中实现防盗链的方法有哪些

  介绍

在PHP中实现防盗链的方法有哪些?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

<强>一,能够取到HTTP_REFERER的情况为以下几种:

1。直接用& lt; href>
2。用提交或& lt;输入类型=image>提交的表单(或获得)
3。使用Jscript提交的表单(或获得)

<强>二,不能取到的情况有以下几种:

1。从收藏夹链接
2。单击“主”页或者自定义的地址
3。利用Jscript的位置。href或location.replace ()
4。在浏览器直接输入地址
5。你们;% Response.Redirect %在
6。你们;% Response.AddHeader %祝辞或& lt;元http-equiv=refresh>转向
7。用XML加载地址

<代码> 大小写敏感函数讲解:

大小写敏感,计算指定字符串在目标字符串中最后一次出现的位置

<强>说明

<代码> int大小写敏感(字符串$干草堆,字符串针美元[int抵消美元=0])
返回字符串美元干草堆中针最后一次出现的数字位置。

美元干草堆在此字符串中进行查找。美元针如果针不是一个字符串,它将被转换为整型并被视为字符的顺序值。

<强>返回值

返回针存在的位置。如果没有找的到,返回错误的。

盗链判断代码:asd。php

& lt; php ?//防盗链技术//先判断是否获取到,$ _SERVER [& # 39; HTTP_REFERER& # 39;],变量   如果收取($ _SERVER [& # 39; HTTP_REFERER& # 39;])) {//才能判断$ _SERVER [& # 39; HTTP_REFERER& # 39;]是不是以http://localhost/开始的   如果才能(大小写敏感($ _SERVER [& # 39; HTTP_REFERER& # 39;],“http://localhost")==0) {   ,,,echo  & # 39; & lt; https://www.yisu.com/zixun/img  src=" a.png "/> ';   }   其他{   头(地点:warning.php);//跳转页面到warning.php//echo $ _SERVER (“HTTP_REFERER”);   }   }   其他{   标题(“位置:warning.php”);   }   ?>

警告。php

& lt; html>   & lt; b>倒链& lt;/b>   & lt;/html>

防盗链验证代码

& lt; ! DOCTYPE  html>   & lt; html>   & lt; head>   & lt; meta  charset=癠TF-8"祝辞   & lt; title> Insert  title  here   & lt;/head>   & lt; body>   https://www.yisu.com/zixun/& lt; a  href=" http://localhost/wml/asd.php " rel="外部nofollow”>验证防盗链   身体   

上面是理解原理

一般通过配置服务器防盗链,如nginx配置访问

(gif | jpg | jpeg | png | bmp | swf)等文件的白名单

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

在PHP中实现防盗链的方法有哪些