设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
立即注册
只需一步,快速开始
快捷导航
登录
注册
论坛首页
BBS
建站模版
微站设计
虚拟主机
企业邮箱
博客日志
Blog
搜索
搜索
搜索
热搜
长春
优惠
活动
做网站
本版
帖子
用户
本版
帖子
用户
请
登录
后使用快捷导航
没有帐号?
立即注册
道具
勋章
任务
留言板
设置
我的收藏
退出
时时商务社区
»
论坛首页
›
建站资源
›
建站技术
›
php实现博客,论坛图片防盗链的方法
返回列表
查看:
1720
|
回复:
0
php实现博客,论坛图片防盗链的方法
[复制链接]
yj1281
当前离线
积分
7391
2487
主题
2487
帖子
7391
积分
论坛元老
论坛元老, 积分 7391, 距离下一级还需 9992608 积分
论坛元老, 积分 7391, 距离下一级还需 9992608 积分
积分
7391
发消息
电梯直达
楼主
发表于 2018-2-14 05:31:51
|
只看该作者
|
倒序浏览
|
阅读模式
本文实例讲述了php实现博客,论坛图片防盗链的方法。分享给大家供大家参考,具体如下:
防盗链的方式很多,我这里就说说我对放盗链的理解,这个跟防止远程提交是一个原理。
先介绍一个函数
uniqid(string);
//这个函数的作用,是在你添加的字符串后面随即添加一个独一无二ID字符串。
如果你还不放心,你可以给这个函输出的字符串再用SHA1()函数进行加密。
这样我们得到了一个独一无二,且只有你自己知道的字符串,用来做数字签证。接下来是如何检测这个数字签证。
function has($string)
{
if(!isset($string) || $string != $_SESSION["uniqid"])
{
exit;
}
}
//上面这个函数的意思是如果不存在字符串$string或者字符串不等于$_SESSION["uniqid"];
//则不执行下面的部分。
检测数字签证的函数以后写好了。接下来是怎么做了。都知道网页是从最顶部一直执行下来的。只要在顶部生出数字签证,在下面的函数中进行验证就可以了。
session_start(); //开去session功能
$uniqid = uniqid("dwz");
$_SESSION["uniqid"] = $uniqid;
//执行代码
has($uniqid); //进行数字验证
上面的最简答的防盗链的方式就完成了。回到正题,怎么防止图片的盗链?
这个更简答。当我们查看网站图片源码的时候会发现,存储图片有二种路径:一种是相对路径,一种是绝对路径。
相对路径的意思是:图片在你的服务器上面。
觉得路径的意思是:图片可以在你的服务器上面,也可以不在你的服务器上面。
如果不在你的服务器上面,那就有一个URL地址或者IP地址。这个就是我们防盗的关键所在。
$_SERVER['HTTP_HOST'];
//这样就可以获取服务器的url。但这个可以直接用代码修改.
获取发送请求URL这样,就可以进行验证,如果是你的URL则通过,不是则不执行。是一样的原理吧!
更多关于PHP相关内容感兴趣的读者可查看本站专题:《
php curl用法总结
》、《
PHP图形与图片操作技巧汇总
》、《
PHP数组(Array)操作技巧大全
》、《
PHP常用遍历算法与技巧总结
》、《
PHP数据结构与算法教程
》、《
php程序设计算法总结
》、《
php正则表达式用法总结
》、《
PHP运算与运算符用法总结
》、《
php字符串(string)用法总结
》及《
php常见数据库操作技巧汇总
》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:
php 破解防盗链图片函数
破解图片防盗链的代码(asp/php)测试通过
使用php伪造referer的方法 利用referer防止图片盗链
使用PHP破解防盗链图片的一个简单方法
php实现图片文件与下载文件防盗链的方法
php实现的网络相册图片防盗链完美破解方法
php如何控制用户对图片的访问 PHP禁止图片盗链
php有效防止图片盗用、盗链的两种方法
PHP防止图片盗用(盗链)的方法小结
分享到:
QQ好友和群
QQ空间
腾讯微博
腾讯朋友
收藏
0
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
用户反馈
客户端