首页 > nginx 反向代理 获取三方图片时的referer问题

nginx 反向代理 获取三方图片时的referer问题

使用第某网站做一个网页,但想网址显示成自己的,又不想用301,于是使用nginx 反代理。
1.在使用nginx 反代理一个网页时,遇到被代理的网站有一个指向cdn的图片,防盗链的问题。
nginx 设置如下。

2.查看被代理的网页发现:
<section class="page page-1 backgroundSize0" id="1092" style='background-image: url("http://img.weiye.me/zcimgdir/thumb/t_1465709656575cf458d71b6.jpg");

这个这个图片会带上我反代的网址作为referer.导致图片403,
经测试,如果不带referer,或者referer是被代理的url的话,图片是可以获取的。

所以问题来了,这个该怎么设置nginx呢?


跟 nginx 没关系,这个请求根本就不过你的 nginx,你控制不了。


找到了一些答案.
1.因为html不太熟悉,目前查下来就是被代理的网页,请求了第三方网站图片,该网站会校验referer,但可以允许referer为空。
禁止请求时带上referer,问题就解决了。
Referrer Policy这里看到referrer的介绍,
嗯嗯,referer是可以禁止的,那我们就可最简单的,全局禁止referer
2.所以到这里

问题就是在nginx取回的reponse中加一个
<meta name="referrer" content="no-referrer">

3.这里
how-to-add-a-response-header-on-nginx-when-using-proxy-pass看到一文章,

4.所以现在就是用add_header或者more_set_header加一个禁止referrer,
对html不太熟,该怎么加?

【热门文章】
【热门文章】