登录  | 加入社区

黑狼游客您好!登录后享受更多精彩

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 675|回复: 0

PHP实现防盗链的方法分析

[复制链接]

12

主题

0

帖子

0

现金

黑狼菜鸟

Rank: 1

积分
0
发表于 2017-12-6 09:32:49 | 显示全部楼层 |阅读模式 来自 美国
GffHHfjQnhhnnJhA.jpg

文章来自:脚本之家

http://www.jb51.net/article/119544.htm



本文实例报告了PHP实现防盗链的方法。分享给各人供各人参考,详细如下:
$_SERVER['HTTP_REFERER']的获取环境
留意 $_SERVER['HTTP_REFERER'] 并不肯定总能获取到,只有在以下环境下才气获取到:
一、可以或许取到HTTP_REFERER的环境为以下几种:
1.直接用<a href>
2.用Submit或提交的表单(POST or GET)
3.利用Jscript提交的表单(POST or GET)


二、不能取到的环境有以下几种:
1.从收藏夹链接
2.单击”主页”大概自界说的地点
3.使用Jscript的location.href or location.replace()
4.在欣赏器直接输入地点
5.
6.或转向
7.用XML加载地点
strrpos函数解说:
strrpos — 盘算指定字符串在目的字符串中末了一次出现的位置

阐明
int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )
返回字符串 $haystack 中 needle 末了一次出现的数字位置。

$haystack在此字符串中举行查找。
$needle假如 needle不是一个字符串,它将被转换为整型并被视为字符的次序值。


返回值
返回 needle 存在的位置。假如没有找到,返回 FALSE。
盗链判定代码:asd.php
1
2
3
4
5
6
7
8
9
10
11
12
13

warning.php
1
2
3

倒链



防盗链验证代码
1
2
3
4
5
6
7
8
9
10




Insert title here


验证防盗链


上面是明白原理
一样平常通过设置服务器防盗链,如nginx设置访问
(gif|jpg|jpeg|png|bmp|swf) 等文件的白名单


以下商务互助

k1tCTyMI8CXOT888.jpg




上一篇:PHP的钩子实现剖析
下一篇:PHP实现网站访问量计数器
您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

 

QQ|申请友链|小黑屋|手机版|Hlshell Inc. ( 豫ICP备16002110号-5 )

GMT+8, 2024-5-14 22:36 , Processed in 0.087322 second(s), 47 queries .

HLShell有权修改版权声明内容,如有任何爭議,HLShell將保留最終決定權!

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表