解决图片403防伪链问题

分类:技术最近更新:2026-04-15浏览:1139

很多网站的图片经常会加上防伪链的操作以防被其他网站盗用,一般会在 Nginx 里配置。

nginx
location ~* \.(gif|jpg|png|jpeg)$ { valid_referers none valid.url.com; if ($invalid_referer) { return 403; } }

但是我们如何引用这些加了防伪功能的图片呢?防伪链基本是通过 request 消息头中的 Referer 判断来源,然后就走上面 Nginx 的逻辑。

解决方案:

1、简单省事

html
<meta name="referrer" content="no-referrer" />

缺点:如果有类似百度统计,cnzz 等第三方工具时,这样的方式就不能被收录地址了。

2、给 img 元素添加属性

html
<img referrerpolicy="no-referrer" src="xxx"/>

你可能会搜到

html
<img rel="no-referrer" src="xxx"/> <img referrer="no-referrer|origin|unsafe-url" src="xxx"/>

这两种属性,自测下来不行。只有 referrerpolicy="no-referrer" 管用。