HTTP杂谈之Referer和Origin请求头再探

一 关于Referer和Origin的汇总

bash 复制代码
1) 知识是'凌乱'的,各位看官看个'热闹'即可

2) 内容不断'更新'

  1、理解有盲区,需要及时'纠正'

  2、内容交叉有'重复',需要'适当删减'

  3、扩展'视野'

3) 以下内容都与'Referer'和'Origin'请求头有'关联'

nginx防盗链

HTTP杂谈之Referrer-Policy响应头

iframe标签referrerpolicy属性

如何合法的跨域访问

nginx与跨域细节探究

使用referer模块和secure_link模块提供变量防盗链

二 细节点、重点、难点挖掘

nginx valid_referers指令的 server_names

bash 复制代码
1) 背景:我们知道'$server_name'表示'主域名'

2) 这里'server_names'是什么'特殊'的属性值?

理解:代表匹配server_name指令的'所有'参数,而且'必须'包含'http[s]://'

referer三点注意事项

bash 复制代码
测试前提: 做好'本地hosts'解析

$invalid_referer变量的值为"1"还是为'空字符串'  --> 区别于之前一直以为是'0',虽然二者等效

② Origin和Referer请求头的关联

bash 复制代码
1) curl、wget等客户端工具'不会自动发送'Referer或Origin请求头

场景:如果要配置'拨测',需要显示'携带'这两个请求头,尤其是跨域名'简单请求'必须携带'Origin'

2) 浏览器对'Referer'和'Origin'请求头行为控制

  1、只要'跨域',浏览器一定会自动携带'Origin'请求头,不管是'简单请求'还是'复杂请求'

  对比:Referer请求头行为受标签'refererpolicy'属性、meta标签、Referer-Policy响应头控制

  补充:一般'Origin'和'Referer'请求头在跨域中是成对'出现'的

3) Referer请求头和Origin请求头'值'的形式

  1、Origin表明了请求'来自于哪个站点',仅仅包括'协议、域名和端口',并'不包含'任何path路径信息

   Origin:https://www.wzj.com:8843

  2、Rerferer在有值的情形,'可以'包括协议、域名、端口、还包括'路径和参数' 

   Referer:https://www.wzj.com:8843/api/v1?name=wzj

  备注: '值的形式比较杂乱',不过一般就是地址栏中除了'#锚点'之外的'全路径'形式,存在信息泄露

六种情况Referer不会被发送

相关推荐
njnu@liyong2 小时前
图解HTTP-HTTP报文
网络协议·计算机网络·http
ZachOn1y2 小时前
计算机网络:应用层 —— 应用层概述
计算机网络·http·https·应用层·dns
Graceful_scenery12 小时前
https双向认证
服务器·网络·网络协议·http·https
njnu@liyong1 天前
图解HTTP-HTTP状态码
网络协议·计算机网络·http
代码洁癖症患者1 天前
HTTP请求的奇幻旅程:从发起至响应的全方位探索
网络·网络协议·http
寻找沙漠的人1 天前
HTTP—02
网络·网络协议·http
范紫涵-19期-工职大1 天前
前端HTTP协议传输以及背后的原理总结
网络·网络协议·http
龙少95431 天前
【Http,Netty,Socket,WebSocket的应用场景和区别】
java·后端·websocket·网络协议·http
小林熬夜学编程2 天前
【Linux网络编程】第十三弹---构建HTTP响应与请求处理系统:从HttpResponse到HttpServer的实战
linux·运维·服务器·c语言·网络·c++·http
旷野..2 天前
为什么 HTTP/3 抛弃了 TCP?是解决问题还是制造问题
tcp/ip·http·制造