使用PHP破解防盗链图片的一个简单方法


Posted in PHP onJune 07, 2014

有自己的主机一般都会设计"防盗链", 其实包括图片防盗链,和下载防盗链等,如:
1.使用.htaccess设置防盗链

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?3water.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ https://3water.com/image.gif [R,L]

2.nginx设置防盗链
location ~* \.(gif|jpg|png|swf|flv)$ {
 valid_referers none blocked 3water.com;
 if ($invalid_referer) {
  rewrite ^/ http://3water.com/234_s.gif;
  #return 404;
 }
}

但怎么破解防盗链呢? 一般的防盗链是判断来路是否为自己的域名, 我们可以使用 php 内置的 file_get_contents 方法来请求这个图片(当然别的后端语言也有类似的方法), 如:
//getImg.php?url=目标图片连接
<?php
header('Content-type: image/jpeg');
echo file_get_contents(isset($_GET["url"])?$_GET["url"]:'http://static.3water.com/images/v1/loading-16-16.gif');
?>

看例子:

1, 直接加载防盗链图片:(该站未授权的图片显示都是空白)
使用PHP破解防盗链图片的一个简单方法

2, 通过php读取图片:
使用PHP破解防盗链图片的一个简单方法

PHP 相关文章推荐
我的论坛源代码(六)
Oct 09 PHP
PHP 单引号与双引号的区别
Nov 24 PHP
Window下PHP三种运行方式图文详解
Jun 11 PHP
PHP页面实现定时跳转的方法
Oct 31 PHP
php实现使用正则将文本中的网址转换成链接标签
Dec 03 PHP
php的mail函数发送UTF-8编码中文邮件时标题乱码的解决办法
Oct 20 PHP
php+ajax制作无刷新留言板
Oct 27 PHP
PHP5.5迭代生成器用法实例详解
Mar 16 PHP
浅析Yii2中GridView常见操作
Apr 22 PHP
php实现查询功能(数据访问)
May 23 PHP
PHP实现按之字形顺序打印二叉树的方法
Jan 16 PHP
php ZipArchive实现多文件打包下载实例
Oct 31 PHP
PHP防止post重复提交数据的简单例子
Jun 07 #PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
Jun 06 #PHP
php 判断网页是否是utf8编码的方法
Jun 06 #PHP
PHP实现的博客欢迎提示功能(很特别哦)
Jun 05 #PHP
php中数字0和空值的区别分析
Jun 05 #PHP
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
Jun 05 #PHP
PHP实现使用优酷土豆视频地址获取swf播放器分享地址
Jun 05 #PHP
You might like
linux下为php添加curl扩展的方法
2011/07/29 PHP
PHP基于新浪IP库获取IP详细地址的方法
2017/05/04 PHP
php中如何执行linux命令详解
2018/11/06 PHP
一直复略了的一个问题,关于表单重复提交
2007/02/15 Javascript
JavaScript对象之间的转换 jQuery对象和原声DOM
2011/03/07 Javascript
JS写的贪吃蛇游戏(个人练习)
2013/07/08 Javascript
JS实现鼠标经过好友列表中的好友头像时显示资料卡的效果
2014/07/02 Javascript
在ASP.NET MVC项目中使用RequireJS库的用法示例
2016/02/15 Javascript
基于Bootstrap使用jQuery实现简单可编辑表格
2016/05/04 Javascript
JS绘制微信小程序画布时钟
2016/12/24 Javascript
详解vue.js2.0父组件点击触发子组件方法
2017/05/10 Javascript
js图片加载效果实例代码(延迟加载+瀑布流加载)
2017/05/12 Javascript
详解nodejs实现本地上传图片并预览功能(express4.0+)
2017/06/28 NodeJs
Vue使用vux-ui自定义表单验证遇到的问题及解决方法
2018/05/10 Javascript
Postman的下载及安装教程详解
2018/10/16 Javascript
react项目如何使用iconfont的方法步骤
2019/03/13 Javascript
JS代码优化的8点建议
2020/02/04 Javascript
基于p5.js 2D图像接口的扩展(交互实现)
2020/11/30 Javascript
[06:16]《DAC最前线》之地区预选赛全面回顾
2015/01/19 DOTA
[01:33]PWL开团时刻DAY2-开雾与反开雾
2020/10/31 DOTA
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/27 Python
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
2018/11/18 Python
使用Python和百度语音识别生成视频字幕的实现
2020/04/09 Python
html5本地存储 localStorage操作使用详解
2016/09/20 HTML / CSS
联想新西兰官方网站:Lenovo New Zealand
2018/10/30 全球购物
英国领先的酒杯和水晶玻璃器皿制造商:Dartington Crystal
2019/06/23 全球购物
Linux面试经常问的文件系统操作命令
2015/11/05 面试题
股份合作协议书范本
2014/04/14 职场文书
家长写给孩子的评语
2014/04/18 职场文书
计算机科学与技术专业求职信
2014/09/03 职场文书
2014派出所所长群众路线对照检查材料思想汇报
2014/09/18 职场文书
思想品德课教学反思
2016/02/24 职场文书
公文格式,规则明细(新手收藏)
2019/07/23 职场文书
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
2021/04/13 Javascript
两行代码解决Jupyter Notebook中文不能显示的问题
2021/04/24 Python
MySQL数据库索引的最左匹配原则
2021/11/20 MySQL