现在具体就来讲解下怎么实现引用外链防盗链的图片到自己站点。
即使现在 大部分网站允许图片外链 也要防范于未然
第一种破解防盗链方式
<?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=图片地址