html访问图片资源403问题(http referrer)

vue使用富文本粘贴图片和html访问图片资源的403问题(http referrer) 1、问题描述 在项目中使用富文本编辑器时,粘贴图片之后出现了一个问题,就是该图片通过地址可以打开,但是在富文本编辑器中却无法显示,报错GET https://bkimg.cdn.bcebos.com/pic/d058ccbf6c81800a0ff13a1ebe3533fa828b478d?x-bce-process=image/watermark,g_7,image_d2F0ZXIvYmFpa2U... 阅读详情

前言

之前碰到一个问题,就是html中通过img标签引入一个图片地址,报403。但是这个图片地址直接复制出来在地址栏打开,却是看得到的。
在这里插入图片描述

先说下解决方法: 在HTML代码的head中添加一句html<meta name="referrer" content="no-referrer" />即可,后面再说下原理。

注意!!

这里是referrer,请求头中通常显示的是referer,这是一个小拼写错误,但是在前端添加<meta name=“referrer”>的时候要使用正确的referrer,否则就会配置失败,默认使用浏览器的referer policy了

http请求中的referrer

http请求体的header中有一个referrer字段,用来表示发起http请求的源地址信息,这个referrer信息是可以省略但是不可修改的,就是说你只能设置是否带上这个referrer信息,不能定制referrer里面的值。

服务器端在拿到这个referrer值后就可以进行相关的处理,比如图片资源,可以通过referrer值判断请求是否来自本站,若不是则返回403或者重定向返回其他信息,从而实现图片的防盗链。上面出现403就是因为,请求的是别人服务器上的资源,但把自己的referrer信息带过去了,被对方服务器拦截返回了403。

在前端可以通过meta来设置referrer policy(来源策略),具体可以设置哪些值以及对应的结果参考这里。所以针对上面的403情况的解决方法,就是把referrer设置成no-referrer,这样发送请求不会带上referrer信息,对方服务器也就无法拦截了。
隐藏referrer信息后,图片资源可以正常访问
浏览器中referrer默认的值是no-referrer-when-downgrade,就是除了降级请求的情况以外都会带上referrer信息。降级请求是指https协议的地址去请求http协议,所以上面403的情况还有另一种解决方法就是,请求的图片地址换成http协议,自己的地址使用http协议,这样降级请求也不会带上referrer。

nginx配置图片防盗链

最后再说一下这种根据referrer拦截,在服务器如何配置。我自己服务器用的nginx,这里就说下nginx的配置。首先打开nginx的配置文件:conf/nginx.conf,在server下面添加如下:

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

首先第一句以文件格式后缀匹配出图片资源路径,然后通过valid_referers添加合法的referer地址,加上none,表示没有传referer也是合法的,最后referer不合法的情况返回403。如果想跳其他地址或返回其他图片资源可以这样:rewrite xxx.xxx.com/xxx.jpg。

orgin

http头部中还有一个与referrer类似的叫orgin的字段,在发送跨域请求或预检请求(preflight request)时会带上这个参数,他用来表示发起请求的服务器地址,这个参数是必定会传的,然后服务器端用此字段来判断是否允许跨域。

作者:ITgecko
链接:https://www.jianshu.com/p/56df73d0d128
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

img标签访问图片时返回403 forbidden的问题 HTML<meta>标签name="referrer"属性主要用于控制网页发送给服务器的referrer信息,可以告诉服务器端用户是从哪个页面来到当前网页的,本篇文章给大家介绍meta标签name="referrer"属性简介和用法小结,感兴趣的朋友跟随小编一起看看吧HTML<meta>标签name="referrer"属性主要用于控制网页发送给服务器的referrer信息,可以告诉服务器端用户是从哪个页面来到当前网页的。 阅读详情

相关推荐

光伏逆变器在环测试解决方案

光伏行业是利用太阳能光辐射将其转化为可用电能的行业。近年来,为应对气候变化和能源安全等挑战,全球对清洁能源的需求不断增长。太阳能作为最具潜力和可再生的能源之一,被视为替代传统化石能源的重要选择,光伏行业因此得到了迅猛发展,并在全球范围内得到了广泛应用。许多国家和地区都将光伏技术作为关键的能源发展方向。尤其是在新兴和发展中国家,光伏发电具有巨大的增长潜力,将成为未来市场竞争的重点。随着规模化生产的推进,光伏组件的制造成本不断降低。

shiwei0813的博客 958

控制请求来源的HTML Meta标签 - Referrer详解

Referrer属性用于控制HTTP请求中的Referrer信息,即请求的来源URL。通过设置Referrer属性,我们可以决定是否发送Referrer头以及如何发送Referrer头信息。

weixin_42560424的博客 1万+

学习STM32的流体水位传感器

引言: 流体水位传感器是一种常用于测量液体水位的设备,广泛应用于水位监测、液位控制和流量计量等领域。STM32是一款功能强大的单片机,具有丰富的外设和灵活的编程能力,非常适合用于流体水位传感器的开发。本文将介绍如何使用STM32开发板与流体水位传感器进行连接和通信,并通过编写代码实现水位的测量和显示。五、总结: 通过以上的代码示例,我们可以实现使用STM32开发板与流体水位传感器进行连接和通信的功能。三、编写代码: 以下是使用STM32CubeIDE编写的示例代码,实现了读取流体水位传感器的功能。

xiaoalla的博客 738

跳转html时请求头怎么取,http 请求头referer详解

Referer(引荐者)请求头referer 与 origin的区别?origin 是协议、域名;referer可以根据携带路径和参数referer 是什么?什么时候携带?什么时候不携带?referrer是HTTP请求header的报文头,用于指明当前流量的来源参考页面。通过这个信息,我们可以知道访客是怎么来到当前页面的。这对于Web Analytics非常重要,可以用于分析不同渠道流量分布、用户...

weixin_39928940的博客 3995

GD32F4系列Keil工程模板搭建全攻略(手把手教学版)

本文提供了一份详细的GD32F4系列Keil工程模板搭建指南。从软件安装、固件库获取、目录规划,到Keil工程创建、文件添加、关键配置(如编译器选项、头文件路径、时钟设置),再到代码定制与常见问题排查,手把手教你构建一个标准化、模块化的开发基础。文章重点介绍了如何利用官方固件库和代码模板,快速建立稳定高效的开发环境,适用于GD32F407等Cortex-M4内核芯片的入门与项目开发。

weixin_29159995的博客 426

从零组装电赛送药小车:OpenMV视觉核心+STM32控制,我的软硬件联调全记录

本文详细记录了从零构建电赛智能送药小车的全过程,重点解析了OpenMV视觉识别与STM32控制的深度协同方案。通过硬件选型对比、通信协议设计、PID调参等实战经验,解决了巡线精度、十字路口识别等核心问题,最终实现稳定可靠的送药小车系统,助力电子设计竞赛取得优异成绩。

weixin_42641741的博客 447

html请求跨域和referer

后端请求 后端redirect重定向页面 使用form请求,ajax请求要单独设置跳转(ajax是页面局部刷新) 修改请求头部 w.Header().Set(“Access-Control-Allow-Origin”, “*”) w.Header().Set(“Access-Control-Allow-Headers”: “X-Requested-With,X_Requested_With,X-PINGOTHER,Content-Type”); w.Header().Set(“Access-C

daoer_sofu的专栏 2100

TensorFlow GPU版本安装步骤-Windows系统

本文由在Windows下安装TensorFlow GPU版本教程-优快云等整理得到。 目录 1、确认显卡是否支持CUDA 1.1 查看显卡信息 打开“设备管理器”,查看显卡信息,如下图所示: 由上图知,本电脑的显卡为NVIDIA Quadro P400. 1.2 查看支持CUDA的显卡 网址:https://developer.nvidia.com/cuda-gpus 经查询可知,该显卡支持CUDA,如下图所示: 2、安装CUDA 2.1 下载CUDA 网址:https://developer.nvi

x_lingyun的专栏 762

html属性写在什么位置,meta标签name="referrer"属性的写法和用法

HTML标签name="referrer"属性主要用于控制网页发送给服务器的referrer信息,可以告诉服务器端用户是从哪个页面来到当前网页的。什么是referrer?referrer有“引用页面”或“来源页面”的意思,用来指定当前页面是从哪个页面跳转过来的,也就是说HTTP请求报头中的referrer包含了跳转至当前页面的上一个页面的url地址;比如,你点击A页面中链接到B页面的URL地址,当...

weixin_42134769的博客 2712

从零开始做题:big_zip

内容为:You_know_the_bed_feels_warmer_Sleeping_here_alone_You_know_I_dream_in_color_And_do_the_things_I_want_You_think_you_got_the_best_of_me_Think_you_had_the_last_laugh_Bet_you_think_that_everything_good_is_gone。查看压缩包内容,发现有五字节长度的文件,用crc碰撞攻击破解明文。

weixin_44626085的博客 1240

HTTP请求头部的Referer字段什么时候出现?什么时候不出现?

Referer字段(注意正确的拼写应为“referrer”,但HTTP标准中由于历史原因沿用了“Referer”)是HTTP请求头部的一个关键组成部分,它主要用于指示当前请求的来源页面。

wsad0532的专栏 2766

用Playwright MCP让AI帮你完成所有浏览器自动化

Playwright MCP(Model Context Protocol)是微软基于 Playwright 框架推出的 AI 浏览器自动化新协议。它通过结构化快照数据和自然语言指令结合大型语言模型(如 GPT),实现无需编码的网页交互。无论你是要测试登录流程、抓取价格数据,还是用 AI 远程控制浏览器,Playwright MCP 都能大幅降低门槛,让“说人话”也能驱动自动化脚本。本篇将从功能介绍、技术架构、使用方法到实际场景,带你全面理解这一自动化革命。

todoitbo的博客 3万+

html加载富文本_vue使用富文本粘贴图片和html访问图片资源的403问题(http referrer) - 暗恋桃埖源

1、问题描述在项目中使用富文本编辑器时,粘贴图片之后出现了一个问题,就是该图片通过地址可以打开,但是在富文本编辑器中却无法显示,报错GET https:///pic/d058ccbf6c81800a0ff13a1ebe3533fa828b478d?x-bce-process=image/watermark,g_7,image_d2F0ZXIvYmFpa2U4MA==,xp_5,yp_5 403在富...

weixin_39884144的博客 343

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

ios html 富文本防盗链,vue使用富文本粘贴图片和html访问图片资源的403问题(http referrer)...

1、问题描述在项目中使用富文本编辑器时,粘贴图片之后出现了一个问题,就是该图片通过地址可以打开,但是在富文本编辑器中却无法显示,报错GET https://bkimg.cdn.bcebos.com/pic/d058ccbf6c81800a0ff13a1ebe3533fa828b478d?x-bce-process=image/watermark,g_7,image_d2F0ZXIvYmFpa2U4...

weixin_35696112的博客 594

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

如何处理第三方图片资源403的问题

返回403的原因 为什么文章列表数据中的好多图片资源请求失败返回 403? 这是因为我们项目的接口数据是后端通过爬虫抓取的第三方平台内容,而第三方平台对图片资源做了防盗链保护处理。 第三方平台怎么处理图片资源保护的? 服务端一般使用 Referer 请求头识别访问来源,然后处理资源访问。 Referer 是什么东西? Referer 是 HTTP 请求头的一部分,当浏览器向 Web 服务器发送请求的时候,一般会带上 Referer,它包含...

李公子的博客 305

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

img标签访问图片403(http referrer),直接访问图片链接可以打开

先说下解决方法: 在HTML代码的head中添加一句,后面再说下原理。 <meta name="referrer" content="no-referrer" /> http请求中的referrer http请求体的header中有一个referrer字段,用来表示发起http请求的源地址信息,这个referrer信息是可以省略但是不可修改的,就是说你只能设置是否带上这个referr...

qq_38402659的博客 1万+
上一篇: 解决JSP中文乱码问题
下一篇: Freemarker获取数字类型属性时的格式问题
GD_vigoss
博客等级 码龄6年 6粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值