有时就希望显示其他网站的Image,直接把其他网站的图片显示在我的网站上。但并不是所有的外网Image 都能直接连接过来显示。
但是并不是所有的图片都可以获取到资源,比如我今天想要获取知乎的图片。此时在浏览器地址输入图片url可以正常显示,但是在img标签拿不到,控制台提示403 forbidden。
原因:知乎的图片采用了防盗链的规则,其实这个规则也比较简单,主要是该站点在得知有请求时,会先判断请求头中的信息,如果请求头中有Referer信息,然后根据自己的规则来判断Referer头信息是否符合要求,Referer 信息是请求该图片的来源地址。
解决方案:
可以伪造一个,也可以不传试一下,知乎的可以。
<meta name="referrer" content="no-referrer" />
这样,浏览器发起的请求将不会携带 referer。
参考:使用Referer Meta标签控制referer:
http://www.freebuf.com/news/57497.html