使用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 相关文章推荐
PHP 程序员也要学会使用“异常”
Jun 16 PHP
PHP 5.3.0 安装分析心得
Aug 07 PHP
php判断输入不超过mysql的varchar字段的长度范围
Jun 24 PHP
7个超级实用的PHP代码片段
Jul 11 PHP
奉献出一个封装的curl函数 便于调用(抓数据专用)
Jul 22 PHP
php获取文件内容最后一行示例
Jan 09 PHP
PHP基于imap获取邮件实例
Nov 11 PHP
使用PHP+AJAX让WordPress动态加载文章的教程
Dec 11 PHP
php二维码生成以及下载实现
Sep 28 PHP
用Laravel Sms实现laravel短信验证码的发送的实现
Nov 29 PHP
php7新特性的理解和比较总结
Apr 14 PHP
PHP操作路由器实现方法示例
Apr 27 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
《魔兽世界》惊魂幻象将获得调整
2020/03/08 其他游戏
oracle资料库函式库
2006/10/09 PHP
PHP开发中常用的8个小技巧
2008/08/27 PHP
PHP SQLite类
2009/05/07 PHP
PHP stripos()函数及注意事项的分析
2013/06/08 PHP
PHP简单实现“相关文章推荐”功能的方法
2014/07/19 PHP
php经典算法集锦
2015/11/14 PHP
thinkPHP使用pclzip打包备份mysql数据库的方法
2016/04/30 PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
2019/10/10 PHP
javascript使用shift+click实现选择和反选checkbox的方法
2015/05/04 Javascript
浅谈jQuery页面的滚动位置scrollTop、scrollLeft
2015/05/19 Javascript
基于jquery实现图片放大功能
2016/05/07 Javascript
JS继承之借用构造函数继承和组合继承
2016/09/07 Javascript
Bootstrap按钮组实例详解
2017/07/03 Javascript
jQuery中将json数据显示到页面表格的方法
2018/05/27 jQuery
vue、react等单页面项目部署到服务器的方法及vue和react的区别
2018/09/29 Javascript
微信小程序实现文字无限轮播效果
2018/12/28 Javascript
详解如何使用webpack打包多页jquery项目
2019/02/01 jQuery
javascript中的闭包概念与用法实践分析
2019/07/26 Javascript
[46:10]2014 DOTA2国际邀请赛中国区预选赛 CnB VS HGT
2014/05/21 DOTA
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
Python中的字符串类型基本知识学习教程
2016/02/04 Python
Python利用heapq实现一个优先级队列的方法
2019/02/03 Python
Python3使用PySynth制作音乐的方法
2019/09/09 Python
Python迭代器模块itertools使用原理解析
2019/12/11 Python
在python中list作函数形参,防止被实参修改的实现方法
2020/06/05 Python
python能在浏览器能运行吗
2020/06/17 Python
基于tf.shape(tensor)和tensor.shape()的区别说明
2020/06/30 Python
详解Python中如何将数据存储为json格式的文件
2020/11/18 Python
CSS3让登陆面板3D旋转起来
2016/05/03 HTML / CSS
全球度假村:Club Med
2017/11/27 全球购物
会议开场欢迎词
2014/01/15 职场文书
大学生精神文明先进个人事迹材料
2014/05/02 职场文书
幼儿园大班开学寄语
2014/08/02 职场文书
村安全生产责任书
2014/08/25 职场文书
小学生六年级作文之关于感恩
2019/08/16 职场文书