php中图片防盗链如何绕过的方法
很多php开发的网站中,都使用了图片防盗链技术,这样做的好处是很多的,比如节省带宽。但有时我们需要某张别人的图片,此时可以参考下本文介绍的方法。假设有这样一张图片:
https://img0.pconline.com.cn/pconline/1901/04/12194819_02_thumb.jpg
直接链接时无法显示真实图片(除chrome浏览器外)。
显示效果如下:
https://img0.pconline.com.cn/pconline/1901/04/12194819_02_thumb.jpg
解决方法如下:
1、将以下代码建立一个php文件,存储为:showpic.php
<?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_RETUR***ANSFER, true);//激活可修改页面,Activation can modify the page
curl_setopt($ch, CURLOPT_RETUR***ANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
$data = curl_exec($ch);
curl_close($ch);
$ext = strtolower(substr(strrchr($img,'.'),1,10));
$types = array(
'gif'=>'image/gif',
'jpeg'=>'image/jpeg',
'jpg'=>'image/jpeg',
'jpe'=>'image/jpeg',
'png'=>'image/png',
);
$type = $types[$ext] ? $types[$ext] : 'image/jpeg';
header("Content-type: ".$type);
echo $data;
?>
2、将showpic.php文件存放在网站根目录,然后图片调用方式为:
http://www.yydy.org:5/showpic.php?url=https://img0.pconline.com.cn/pconline/1901/04/12194819_02_thumb.jpghttp://www.yydy.org:5/showpic.php?url=https://img0.pconline.com.cn/pconline/1901/04/12194819_02_thumb.jpg
时隔多年依然有效!
页:
[1]