PHP反向代理-百度图片

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP反向代理-百度图片相关的知识,希望对你有一定的参考价值。

最近在一些开发中需要调用百度贴吧等一系列的百度图片 但是防盗链实在讨厌

于是就简单利用curl实现了反向代理(应该是这么叫的)

如果网站直接调用百度图片 会出现如下(博客园貌似在白名单 可以直接用百度链接 ...)

技术分享

实际上这张图为(随便找的图)

技术分享

php代码如下:

//img.php
<?php if(!isset($_GET["url"])) { $url=‘http://g.hiphotos.baidu.com/zhidao/wh%3D450%2C600/sign=4d275dc4a864034f0f98ca029af35507/18d8bc3eb13533fa84570037abd3fd1f40345bc1.jpg‘; } else { $url=$_GET["url"]; } $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //curl_setopt($ch,CURLOPT_USERAGENT,"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"); //经过测试可省略 curl_setopt($ch, CURLOPT_HEADER, 0); $img=curl_exec($ch); curl_close($ch); header("Content-type: image/png"); echo $img;

调用基本就是

//img.html
<img src="http://域名/img.php?url=http://g.hiphotos.baidu.com/zhidao/wh%3D450%2C600/sign=4d275dc4a864034f0f98ca029af35507/18d8bc3eb13533fa84570037abd3fd1f40345bc1.jpg"> 

挺简单的代码

不过还是有需要注意的 .php文件的格式必须为无 BOM 格式 (本想用代码过滤 但是简单的测试了几次,没有成功 所以还是手动转码吧)

以上是关于PHP反向代理-百度图片的主要内容,如果未能解决你的问题,请参考以下文章

每日一学之Nginx系列NO.5反向代理

linux+apache+nginx实现,反向代理动静分离

Nodejs绑定域名与反向代理

谷歌反向代理

正向代理和反向代理区别来自百度

nginx--❤️图解及代码实现正向代理反向代理及负载均衡(非常实用,建议收藏❤️)