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

yipeiwu_com7年前PHP代码库

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

复制代码 代码如下:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?jb51.net/.*$ [NC]
RewriteRule \.(gif|jpg)$ //www.jb51.net/image.gif [R,L]

2.nginx设置防盗链
复制代码 代码如下:
location ~* \.(gif|jpg|png|swf|flv)$ {
 valid_referers none blocked jb51.net;
 if ($invalid_referer) {
  rewrite ^/ http://jb51.net/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.jb51.net/images/v1/loading-16-16.gif');
?>

看例子:

1, 直接加载防盗链图片:(该站未授权的图片显示都是空白)

2, 通过php读取图片:

相关文章

PHP跳转页面的几种实现方法详解

•PHP页面跳转一、header()函数header()函数是PHP中进行页面跳转的一种十分简单的方法。header()函数的主要功能是将HTTP协议标头(header)输出...

php代码架构的八点注意事项

本文总结讲述了php代码架构的八点注意事项。分享给大家供大家参考,具体如下: 写代码写了6年多了,看看以前的架构,看看现在的架构。都有一些不足的地方。不管怎么样,都一直在改进。说实话不太...

基于header的一些常用指令详解

header常用指令header分为三部分:第一部分为HTTP协议的版本(HTTP-Version);第二部分为状态代码(Status);第三部分为原因短语(Reason-Phrase)...

PHP生成随机用户名和密码的实现代码

有时候我们需要在应用程序中使用随机生成用户名和密码,这样可以大大提高应用程序的安全,在PHP中生成随机用户名和密码可以使用 mt_rand 函数或者是 rand 函数, rand 函数在...

解决ThinkPHP下使用上传插件Uploadify浏览器firefox报302错误的方法

最近用ThinkPHP开发一个项目,集成了批量上传文件插件Uploadify,在谷歌Chrome和IE下都能正常上传,只有火狐下提示这个错误,网上找了很多解决办法,基本都说flash在f...