用nginx做反向代理来访问防外链图片

2009年11月19日 | 标签: , ,

女儿的博客从新浪搬到wordpress后,发现原来博客上链接的新浪相册的图片都不能访问了,一年的博客内容,一个个去重新上传图片,修正链接也是个大工程。还是得先想个其它办法。

想想防外链大都是通过检查请求中的http referer来实现的。如果通过反向代理来动态指定http referer是不是可以解决问题。马上做实验,没错,方法对新浪相册用效。

那接着就是搭一个反向代理了,nginx的名声现在是越来越大,资源也占用小。先用它吧。

location /get/
{
set $hostx “”;
set $addrs “”;
if ( $uri ~ “^/get/http./+([^/]+)/(.+)$”) {
  set $hostx $1;
  set $addrs $2;
}
resolver 127.0.0.1;
proxy_pass http://$hostx/$addrs;
proxy_set_header referer “http://$hostx“;
}
注意resolver要指向一个有效的dns服务器。

这时就可以用http://nginx-server/get/sina-photo-url来访问新浪图片了。

改链接的方法可以是从wordpress导出xml文件,做字符串替换后再导入就可以了。

相关文章:

  1. 反向代理(Reverse Proxy)带来的主机名端口问题及解决
  2. 灵活运用Apache反向代理
  3. Picasaweb的反向代理访问
  4. 反正代理的内容过滤变换
  5. WebSphere Web Server配置方式选择
目前还没有任何评论.