首页

a img 禁用http的 referer头信息

kkcode
2023-08-01  阅读 274

用超链接的方式从一个网站跳转到另外一个网站,会报无权限等错误,而直接打开就不报错。
从一个网站引用另一个网站的图片,会显示防盗链的图片。。。
很大的原因就是服务器检查了 referer,判断是否来自自己的服务器,如果不是的话,就返回个错误。如果想跳过这些检查,就需要把浏览器默认加的 referer 去掉。这里有四种方法:

方法一:HTML 全局禁用 referer

<meta >复制代码

其中 content 有四种类型的值:

类型含义
never去掉 referer
always不管 http 有没有 SSL,均设置 referer。
origin只发送 origin 的设置。
default如果当前页面用了 https,而要加载的资源是 http,则 http header 中的 referer 置为空

方法二:设置 ReferrerPolicy 属性

<img src="test.jpg"  referrerPolicy="no-referrer" />复制代码

兼容性:

-nothingmeta in head referrer=nevermeta in head referrer=no-noreferrermeta referrer=nevermeta referrer=no-referrerimg referrerPolicy=no-referrer
ChromeNYYYYY
FirefoxNYYNNY
Edge/IENYNYNN

方法三:rel

<iframe src="auto-refresh.html" width="500" height="500" rel="noreferrer"></iframe>
<a href="test.html", target="_blank" rel="noreferrer noopener">Test</a>复制代码

方法四:代理转发

通过代理转发,可以把请求的 referer 去掉。

<img src="http://www.test.com/test?source_url=http://www.other.com/test.jpg" />复制代码

原文地址 blog.csdn.net

本文为作者原创文章,转载无需和我联系,但请注明转载链接。 【前端黑猫】