使用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后门URL的防范
Nov 12 PHP
PHP中使用asort进行中文排序失效的问题处理
Aug 18 PHP
ThinkPHP中URL路径访问与模块控制器之间的关系
Aug 23 PHP
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
Nov 04 PHP
PHP冒泡算法详解(递归实现)
Nov 10 PHP
php简单日历函数
Oct 28 PHP
Yii基于数组和对象的Model查询技巧实例详解
Dec 28 PHP
CodeIgniter配置之SESSION用法实例分析
Jan 19 PHP
Yii开启片段缓存的方法
Mar 28 PHP
PHP判断是否是微信打开,浏览器打开的方法
Mar 14 PHP
PHP按符号截取字符串的指定部分的实现方法
Sep 10 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
网站当前的在线人数
2006/10/09 PHP
PHP脚本数据库功能详解(上)
2006/10/09 PHP
用PHP的ob_start() 控制您的浏览器cache
2009/08/03 PHP
PHP开发环境配置(MySQL数据库安装图文教程)
2010/04/28 PHP
PHP获取数组中某元素的位置及array_keys函数应用
2013/01/29 PHP
php批量转换文件夹下所有文件编码的函数类
2017/08/06 PHP
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
jquery 查找iframe父级页面元素的实现代码
2011/08/28 Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
2014/06/23 Javascript
JavaScript实现彩虹文字效果的方法
2015/04/16 Javascript
JS截取字符串实例详解
2015/11/24 Javascript
jQuery 1.9.1源码分析系列(十五)之动画处理
2015/12/03 Javascript
vue基于element-ui的三级CheckBox复选框功能的实现代码
2018/10/15 Javascript
Javascript实现秒表倒计时功能
2018/11/17 Javascript
cordova+vue+webapp使用html5获取地理位置的方法
2019/07/06 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
Jquery高级应用Deferred对象原理及使用实例
2020/05/28 jQuery
vue el-upload上传文件的示例代码
2020/12/21 Vue.js
[02:57]DOTA2亚洲邀请赛小组赛第四日 赛事回顾
2015/02/02 DOTA
详解Python3中yield生成器的用法
2015/08/20 Python
Python处理json字符串转化为字典的简单实现
2016/07/07 Python
Django返回json数据用法示例
2016/09/18 Python
Python中如何获取类属性的列表
2016/12/26 Python
神经网络理论基础及Python实现详解
2017/12/15 Python
Python实现简单求解给定整数的质因数算法示例
2018/03/25 Python
Python列表list排列组合操作示例
2018/12/18 Python
解决python写入带有中文的字符到文件错误的问题
2019/01/31 Python
python调用pyaudio使用麦克风录制wav声音文件的教程
2019/06/26 Python
Python使用grequests并发发送请求的示例
2020/11/05 Python
Python第三方库安装缓慢的解决方法
2021/02/06 Python
python 获取域名到期时间的方法步骤
2021/02/10 Python
推荐10个HTML5响应式框架
2016/02/25 HTML / CSS
shell的种类有哪些
2015/04/15 面试题
校长就职演讲稿
2014/01/06 职场文书
初中运动会闭幕词范本3篇
2019/12/09 职场文书
Python绘制分类图的方法
2021/04/20 Python