欢迎光临精准像素,本站所有资源仅供学习与参考,禁止用于商业用途或从事违法行为!

PHP教程

php破解防盗链的2种方法

PHP教程 精准像素 2020-10-14 人阅读

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

即使现在 大部分网站允许图片外链 也要防范于未然

第一种破解防盗链方式

<?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=图片地址