目录

  • 一、遇到的问题
  • 二、原因
  • 三、提供三种解决方式

一、遇到的问题

当A网址页面跳转新界面打开B网站的静态资源时报404,

比如 http://www.A.com 页面有一个按钮,点击后会打开一个新页签请求B网站的一个文件https://www.B.com/test.txt 因为跳转时请求头携带了referer,导致B网站拦截,所以访问不到资源报404。而复制https://www.B.com/test.txt 粘贴到新页签就能正常打开。

二、原因

我们在从一个网站A点击链接进入另一个网站B页面时,浏览器会在header里加上Referer值,来标识这次访问的来源页面。而B网站对Referer进行了拦截导致。

三、提供三种解决方式

1、在A网站页面头部加入下面meta,所有跳转便不会携带referer

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

拓展:
same-origin:
对于同源的请求会发送引用地址,但是对于非同源请求则不发送引用地址信息。
比如,www.AAA.com/page1.html 跳转到 www.AAA.com/page2.html 同源会携带 referrer,
www.AAA.com/page1.html 跳转到 www.BBB.com/page2.html 不同源不会携带 referrer,

<meta name="referrer" content="same-origin" />

除了可以设置 no-referrer 和 same-origin 其他 referrer 的设置值可参考:
Referrer-Policy
W3c-Referrer Policy
Remove http referer

2、使用window.open来去除referrer
如果是新页签打开:

window.open('javascript:window.name;','<script>location.replace("'+你的跳转url+'")<\/script>');

如果是新窗口打开:

window.open(你的跳转url, '_blank', 'noopener,noreferrer,resizable')

3、使用iframe

document.body.appendChild(document.createElement('iframe')).src='javascript:"<script>top.location.replace(\''+你的跳转url+'\')<\/script>"';

参考:
Remove http referer
Window.open()
关于 window.open() referer 非法请求的问题

url跳转http不携带referer方法相关推荐

  1. php绕过refer,绕过referer检测url跳转

    一.检测referer的场景 >缓解CSRF攻击 若referer为空,或referer不属于自身域及子域,则拒绝后续操作​(更改密码.更改昵称) >加固以jsonp方式获取信息 譬如​, ...

  2. express url跳转(重定向)的实现:res.location() res.redirect()

    Express 是一个基于Node.js 实现的web框架,其响应HTTP请求的response对象中有两个响应url跳转方法res.location() res.redirect(),可以实现301 ...

  3. 补充 宝玉 之《URL欺骗之以假乱真!》之 POST 方法提交数据 之 处理!

    补充 宝玉 之<URL欺骗之以假乱真!>之 POST 方法提交数据 之 处理! (之乎者也,怪别扭的!) 我们首先搭建一个环境: IIS 代理一下 Resin 下的 jsp 页面! (Re ...

  4. 拦截锚点修改url_浅谈URL跳转与Webview安全

    学习信息安全技术的过程中,用开阔的眼光看待安全问题会得到不同的结论. 在一次测试中我用Burpsuite搜索了关键词url找到了某处url,测试一下发现waf拦截了指向外域的请求,于是开始尝试绕过.第 ...

  5. asp.net服务器端跳转页面的三种方法

    asp.net服务器端跳转页面的三种方法 1.Response.Redirect这个跳转页面的方法跳转速度不快,因为它要走2次回发(postback). 它可以跳转到任何页面,没有站点页面限制(可以由 ...

  6. thinkphp3.2.3在nginx环境下“__PUBLIC__“路径错误、URL跳转路径错误解决方案

    bug:"PUBLIC"路径错误.URL跳转路径错误 描述:apache环境下正常,部署nginx后 __PHP_FILE__获取信息为0 原因: _PHP_FILE_ 常量获取到 ...

  7. WEB安全基础-URL跳转漏洞

    URL跳转漏洞:借助未验证的URL跳转,将应用程序引导到不安全的第三方区域,从而导致的安全问题. URL跳转常见原理 中奖率,或者给XXX投票 如http://qt.qq.com/safecheck. ...

  8. SpringBoot 之 跳转页面的几种方法

    ** SpringBoot 之 跳转页面的几种方法 ** 1. a 标签的通用跳转方法 <a href="toPage?url=/vue/vue">链接 1</a ...

  9. 跳转系统设置相关界面的方法

    跳转系统设置相关界面的方法 跳转系统设置界面,例如提示用户打开定位.蓝牙或者WIFI,提醒用户打开推送或者位置权限等 在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个p ...

最新文章

  1. Docker / 深入理解的容器和镜像
  2. jz2440开发板修改UBOOT支持NAND FLASH
  3. NSDate的简单用法
  4. UVA10735 Euler Circuit题解
  5. 社交网络分析初步学习1.md
  6. 移动端app开发,原生开发与混合开发的区别
  7. import java.io 是什么意思_Java IO 详解
  8. 游戏制作之路:游戏引擎选择、Mac下和Windows下UnrealEngine 4体验对比、文档及其他 -- 前几天我说要学做游戏的流程...
  9. python电路仿真软件_Arduino仿真软件64位Virtual Breadboard下载 v4.21
  10. 中国居民身份证上的信息英语翻译
  11. 线程池java submit,详解线程池execute和submit用法
  12. cnn实现手写识别字体代码详解
  13. Linux中的UID、GID和SID
  14. MongoDB被黑记录
  15. 完整性+存储过程和函数——CHECK / CONSTRAINT / TRIGGER / PROCEDURE/ FUNCTION
  16. 深入分析linux内核的内存分配函数devm_kzalloc
  17. 计算机二级C语言考试Tips
  18. Xsolla与GPay合作,全面开通土耳其市场
  19. 7-1 程序改错题2 (6分)
  20. 软件测试的4W1H(第1-2课时)

热门文章

  1. 软件开发团队的有效管理和激励
  2. 金仓数据库 KingbaseES 客户端编程接口指南 - JDBC(11. JDBC 示例说明)
  3. python随机库函数_python标准库中的随机分布函数
  4. java用swing日历标记节日,java基于swing实现日历
  5. 小米4 第三方re奇兔_【PC】小米运动刷步数 微信 QQ 支付宝 蚂蚁森林每天296g能量...
  6. R及R Studio下载及简单介绍(界面+R语言)
  7. 自适应滤波(LMS,RLS)
  8. Java String类源码阅读笔记
  9. ResNet详解:ResNet到底在解决什么问题?
  10. 用 AsyncDisplayKit 開發響應式 iOS App