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反向代理-百度图片的更多相关文章
- 记阿里云SLB后配置Nginx反向代理百度地图API的坑
需求: 百度的原始请求:https://api.map.baidu.com/place/v2/suggestion?query=s®ion=sc&city_limit=true& ...
- 用nginx做反向代理来访问防外链图片
用nginx做反向代理来访问防外链图片 女儿的博客从新浪搬到wordpress后,发现原来博客上链接的新浪相册的图片都不能访问了,一年的博客内容,一个个去重新上传图片,修正链接也是个大工程.还是得先想 ...
- WINDOWS下nginx实现本地支持的图片服务器反向代理
最近在学习nginx的反向代理和负载均衡的运用时,觉得挺简单的,但是还是想写一篇博客用于记录自己的学习过程. 好的,我们进入正题 Nginx(engine x) 是一个高性能的HTTP和反向代理服务器 ...
- Nginx反向代理图片总结
配置需求: 内网192.168.80.205的机器上部署了一个Web项目,下文称web, url为http://192.168.80.205:8082. 并且使用nginx访问图片,url格式 ...
- Windows Server2012 r2 nginx反向代理图片服务器
1.下载nginx http://nginx.org/en/download.html,本人下载的1.18.0版本 2.下载 Windows Service Wrapper(winsw.exe) v ...
- 反向代理代理百度、google
<VirtualHost _default_:443> # ServerAdmin mail@localhost # DocumentRoot "/var/www/html&qu ...
- nginx反向代理解决wechat图片问题
在nginx 中nginx.conf开启反向代理 location ^~ /wechat_image/ { add_header 'Access-Control-Allow-Origin' " ...
- Nginx反向代理,负载均衡,redis session共享,keepalived高可用
相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此 ...
- 在IIS7中使用ARR(Application Request Routing)反向代理虚拟目录到Nodejs站点
目标: 1.访问www.arrdemo.com/proxy 跳转到 localhost:8898的Nodejs站点 2.Nodejs站点的页面可以返回到浏览器,包括js,css,图片 3.Nodejs ...
随机推荐
- iOS中文网址路径转换URLEncode
如果返回的URL中有中文可以用此方法转换 今天发现一个蛋疼的问题,服务端返回的urlString里面有时含有中文,使用 [NSURL URLWithString:urlString]生成URL对象时, ...
- CTE递归查询
WITH ctetest(AgencyID,ParentAgencyID,level)AS ( SELECT AgencyID,ParentAgencyID,0 level FROM dbo.Web_ ...
- Jmail组件-----发送email
jmail是一个第三方邮件操作组件,通常位于web服务器端,和站点程序紧密配合来接收及提交邮件到邮件服务器的控件,让网站拥有发送邮件既接收邮件的功能. 之所以想尝试它的理由呢 是因为----jmail ...
- Android中的内容提供器
用途 不同于File, SharedPreferences和DataBase,Content Provider主要用于不同的应用程序间共享数据,允许一个程序安全的访问另一个程序中的数据. 用法 通过C ...
- CDH5.4.5运行Phoenix导入CSV文件
1.安装phoenix 在界面上设置Phoenix的parcel包: http://52.11.56.155:7180/cmf/settings?groupKey=config.scm.parcel. ...
- Eclipse_luna_J2EE_For_JS+tomcat8.0环境搭建、配置、开发入门
一.所有需要的软件.插件等下载地址 J2SE的官方下载路径:http://www.oracle.com/technetwork/java/javase/downloads/index.html Ecl ...
- eap-md5
eap-md5 文件路径 用途 示例 备注 #gedit /usr/local/etc/raddb/sites-available/default #gedit /usr/local/et ...
- Delphi编译的程序如何获取管理员权限
1.制作manifest文件 <?xml version="1.0" encoding="UTF-8" standalone="yes" ...
- Socket支持多用户并发访问的解决办法
//创建线程池,池中具有(cpu个数*50)条线程 ExecutorService executorService = Executors.newFixedThreadPool(Runtime.get ...
- app接口测试-bug分类
前段时间在测试一个项目,任务是测试app的API.总结下遇到的问题类型: 1 通过app提交数据,隐形数据有误.(主要通过验证数据库) 比如用户通过app输入工单提交.接口数据中,用户输入的信息都正确 ...