卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64334本站已运行4115

php破解防盗链的2种方法

现在具体就来讲解下怎么实现提及外链防盗链的图片到自己站点。

即使现在 大部分网站容许图片外链 也必须严防于未然

第一种化解防盗链方式

<?php
$p=$_GET['p'];
$pics=file($p);
for($i=0;$i< count($pics);$i++)
{
echo $pics[$i];
}
?>

保存为1.php 放到网站根目录

调用方式就是/1.php?p=图片地址(地址前必须要http://开头)

此种方式试用大部分主流网站图片百度 新浪博客 点点 poco 等都可正常访问  但对于网站设有安全狗的 就不能获取盗链了

此类方式不所推荐

第二种破解防盗链方式

<?php 
$url = $_GET["url"];
//$url = str_replace("http:/","http://",$url); 
$dir = pathinfo($url);
$host = $dir['dirname'];
$refer = $host.'/';
$ch = curl_init($url);
curl_setopt ($ch, CURLOPT_REFERER, $refer);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//Activation can modify the page
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
$data = curl_exec($ch);
curl_close($ch);
header("Content-type: image/jpeg");//Code to support jpeg, need to modify to support other image formats
print( $data );
?>

此外图片地址中含有& =字符的 不管这种方式还是第一中都无法获取

要用的话可以采用/image.php?img_url=图片地址

卓越飞翔博客
上一篇: IE不显示加载iconfont阿里巴巴图标的解决方法
下一篇: 回味CSS hack的几种常用写法

相关推荐

留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏