nginx add_header 仅部分或一次生效的原因与解决办法
时间:2022-07-24
本文章向大家介绍nginx add_header 仅部分或一次生效的原因与解决办法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
为了检测代理是否真的成功,并且判断是否为所谓的高匿名,我写了在nginx中做了如下的一个配置,添加头部字段,并返回客户端信息。
真正测试代理的时候,发送的是head请求,通过header字段,判断是否真的去请求了,而不是随意给我返回个200(恩,是有这种坑货代理的)
location /proxyTest {
default_type text/plain;
add_header 'Mutex' 'ProxyTest_Xuing';
if ($http_x_forwarded_for != ""){
add_header 'anonymous' 'no';
}
return 200 '$remote_addr - $remote_user [$time_local] $request "$status" $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for"';
}
只要是学过程序的,读下来的话,都知道,我想要的是首先添加一个Mutex
,如果http_x_forwarded_for 不为空的话,再添加一个anonymous
。
离谱的是,添加了下一个,上一个就没有了。hhhh
经过反复试验与资料查找(见参考链接),国外友人和我的情况比较类似,但我没想到是同样的原因。其实就是
add_header仅生效在最近的一个{}当中。
所以。。简单的办法就是if里面再写一遍add_header 'Mutex' 'ProxyTest_Xuing';
嘛,一般人应该不会有这个问题。就写到这里了 hhhh
参考链接: https://www.peterbe.com/plog/be-very-careful-with-your-add_header-in-nginx
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Flutter Widgets 之 Expanded和Flexible
- 可能是Asp.net Core On host、 docker、kubernetes(K8s) 配置读取的最佳实践
- Flutter Widgets 之 AnimatedContainer
- Flutter Widgets 之 Opacity 和AnimatedOpacity
- 聊聊常见的服务(接口)认证授权
- Flutter Widgets 之 FutureBuilder
- [Hei-Ocelot-Gateway ].Net Core Api网关Ocelot的开箱即用版本
- Flutter Widgets 之 InkWell 和 Ink
- Flutter Widgets 之 BottomNavigationBar
- Flutter Widgets 之 PageView
- 笔试题:代码如何实现“百钱买百鸡”?
- Flutter Widgets 之 Dialog 对话框
- 全网最详细的一篇Flutter 尺寸限制类容器总结
- 一篇带你看懂Flutter叠加组件Stack
- Flutter 拖拽排序组件 ReorderableListView