Nginx实战:nginx支持带下划线的header

Ubuntu 22.04远程桌面终极指南:从零配置RDP到解决黑屏问题 本文提供了一份Ubuntu 22.04远程桌面配置的终极指南,详细讲解了如何从零开始安装和配置RDP服务,并重点解决了连接后常见的黑屏问题。通过分析会话冲突、修复启动脚本及配置权限策略,帮助用户实现稳定、高效的远程桌面连接,优化分辨率、禁用锁屏,打造无缝的远程工作体验。 阅读详情
AI摘要

本文介绍了Nginx中处理带有下划线的HTTP头部字段的方法。默认情况下,Nginx会忽略这些字段,但通过开启特定配置项可以解决此问题。文章详细展示了如何在配置文件中启用该功能,并验证其效果。

        nginx对header 的名字字符做了限制,默认 underscores_in_headers 为off,表示如果header name中包含下划线,则忽略掉,后端服务就获取不到该请求头。

        为了支持header带下划线的参数,可以在http内或者server内设置如下参数:

        underscores_in_headers on;//默认是off

        如nginx的配置如下:

http {
    log_format  main  '$http_app_id';

    access_log  /var/log/nginx/access.log  main;
    ........
}

        带上自定义header【app_id】去请求nginx

        打印的日志如下,无法获取值:

        配置文件中加上【underscores_in_headers on;】

http {
    log_format  main  '$http_app_id';

    access_log  /var/log/nginx/access.log  main;
    underscores_in_headers on;
    ........
}

        再次带上自定义header【app_id】去请求nginx,日志找那个就可以打印出自定义header【app_id】的值了

Agentic-Desktop-Pet:构建本地智能桌面助手的架构与实践 智能体(Agent)作为人工智能领域的重要概念,是指能够感知环境、自主决策并执行任务以实现目标的软件实体。其核心原理在于结合感知、决策与执行模块,通过大语言模型(LLM)等推理引擎处理信息并驱动行动。这种架构的技术价值在于将AI的认知能力与具体的操作系统环境深度融合,从而创造出能主动理解用户上下文、提供个性化服务的智能伙伴。在应用场景上,智能体技术正从云端对话机器人向本地化、场景化的桌面助手演进,旨在解决传统自动化工具缺乏智能、而纯聊天机器人脱离操作环境的问题。本文探讨的Agentic-Desktop-Pe 阅读详情

相关推荐

标准高斯过程回归(Gaussian Processes Regression, GPR)从零开始,公式推导

标准高斯过程回归从零开始公式推导

qq_43587949的博客 1万+

解决nginx无法获取带下划线的header值

问题描述:因为项目用到了xxl,需要header为xxl_sso_sessionid的值,本地没有问题,放到服务器上,nginx却无法获取到。NGINX 默认会将所有包含连字符(-)的请求头转换为下划线(_)格式。这是为了符合一些系统的命名规则,因为环境变量通常不允许连字符。要在 NGINX 中直接使用包含连字符的请求头,需要进行一些特殊配置。可以使用指令来禁用这种行为,从而保留原始的连字符格式。

dream_snow2012的专栏 1291

从UC3842的FB脚到COMP脚:一次讲透反激电源两种光耦反馈接法的选择与实战

本文深入探讨了UC3842 PWM控制器在反激式开关电源设计中的两种光耦反馈接法:FB脚与COMP脚方案。通过分析信号极性差异、稳定性特点及动态响应性能,提供场景化选型指南和可靠性设计要点,帮助工程师优化反馈环路设计,提升系统稳定性与效率。特别针对TL431和PC817等关键元件在温度漂移、老化衰减等实际问题给出解决方案。

weixin_28717683的博客 703

会话丢失-NGINX配置之underscores_in_headers

1.描述 问题 NGINX代理某个web服务时,单机情况下也出现不停的要求认证的情况 初步分析 去掉NGINX代理,直接访问服务,未出现上述情况; 进一步分析: 查看经过NGINX的请求和直接访问服务请求区别: cookie中的部分带下划线'_'的认证信息丢失导致,因此出现重复要求认证。 2.解决办法 在NGINX,配置文件http {} 模块中添加如下配置: underscores_in_headers on; 重启NGINX服务,再次访问服务正常。 3.官方解释 Syntax: unde

渣渣--程序猿的博客 1万+

nmap、X-Scan漏洞扫描和Metasploit中用永恒之蓝漏洞入侵靶机并上传冰河

利用nmap、X-Scan扫描靶机的漏洞,在Metasploit中用扫描出的永恒之蓝漏洞入侵靶机,建立连接后上传冰河木马控制靶机,最后用冰河陷阱清除靶机的冰河木马,记一次完整的入侵控制实验。

m0_59302403的博客 4405

从零上手HiAgent:构建能听懂指令的智能体框架实战指南

智能体(Agent)作为人工智能领域的重要范式,正从传统的预设流程自动化转向以目标驱动的自主规划与执行。其核心原理在于利用大语言模型(LLM)作为决策大脑,通过任务规划、工具调用与记忆机制,将模糊的自然语言指令转化为可执行的工作流。这一技术显著提升了人机协作的效率和自然度,其价值在自动化办公、数据分析与智能流程编排等场景中尤为突出。本文聚焦于HiAgent这一具体框架,深入解析其作为智能体开发平台的核心架构,涵盖规划器、执行器、工具集等关键组件,并提供从环境配置、自定义工具开发到复杂任务链构建的完整工程实践

weixin_29266007的博客 880

关于nginx服务器underscores_in_headers属性配置header属性中含有下划线获取不到的问题

今天使用Laravel开发小程序后台接口的时候遇到一个问题,在本地使用wamp集成环境(会不会有人说我不专业,原谅我比较懒,环境懒得搭,就这个挺好使)开发测试完成的小程序在lnmp环境上登录请求能成功但是不能保持登录状态,原因肯定出在token上。喏,就是这个自定义的api_token如图,在后台request获取header中的api_token时获取不到,可是我分明是传了这个值的啊啊啊啊啊啊啊啊,并且在wamp环境下没有问题,那就是lnmp的问题。 查阅资料发现了下面这点内容, Changes wit

yifan_lion的博客 5382

量化回测框架三选一:Backtrader、Zipline、PyAlgoTrade,新手到底该跟谁学?

本文对比分析了三大量化回测框架Backtrader、Zipline和PyAlgoTrade,帮助新手选择最适合的入门工具。从安装配置、策略编写到文档查阅,详细解析各框架的特点和适用场景,为量化交易初学者提供实用指南。

weixin_28745309的博客 267

nginx 下划线字符配置

underscores_in_header 是一个 Nginx 配置选项,用于控制 Nginx 是否应该忽略使用下划线字符作为 HTTP 请求头中的一部分的请求。默认情况下,Nginx 不允许在请求头中使用下划线字符。HTTP 协议中的请求头 (key-value格式) 需要满足一定的格式要求,RFC2616 规范定义了 ...

weixin_44772835的博客 2079

告别混乱!在Unity中为Best MQTT v3设计清晰的服务层:配置、连接、订阅发布模块拆分指南

本文详细介绍了如何在Unity中使用Best MQTT v3插件构建清晰的服务层架构,包括配置管理、连接服务、订阅管理和发布服务的模块化拆分。通过解耦设计、事件驱动和接口抽象,提升代码可维护性和可测试性,适用于物联网和实时通信开发场景。

weixin_30576827的博客 357

cvtColor +内存泄漏

题目不知道怎么取,因为cvtColor并没有产生内存泄漏,但是我由于没有正确使用cvtColor而出现了内存泄漏的问题,所以暂且以cvtColor+内存泄漏为题 1.应用背景 项目中用到cvtColor的地方是需要将灰度图转为3通道的彩色图(实际上转换后仍然为灰色的,但是电脑认为的是3通道的彩色图了) 因此需要用到以下语句 cvtColor(src_img, cvMtxRGB, C

smilebluesky的专栏 6056

Nginx默认会自动忽略请求头Headers里带下划线_的参数

起因:该接口设置了必须要传送app_code和app_secret才能正常访问。实际我在本地环境测试中,发现该接口是正常访问的,但是部署到正式系统之后发现,该接口一直提示app_code和app_secret不能为空。后续排查:发现正式系统和本地代码是一样的,但是正式系统不久前配置了nginx反向代理,由于它默认开启了自动忽略Headers带下划线的参数,所以才出现了该问题。解决方式:在nignx配置文件添加 underscores_in_headers on;

在路上 1769

RK3588平台开发系列讲解(项目篇)常见模型结构

📢 AI 模型常采用人工神经网络来模拟人脑神经的记忆和处理信号的能力。常见的人工神经网络类型有深度神经网络(Deep Neural Network,DNN)、卷积神经网络(Convolutional Neural Network,CNN)、循环神经网络(Recurrent Neural Network,RNN)等。

内核笔记 1756

关于nginx请求头中有下划线_的坑

1,前言 风平浪静的下午,一个前端开发同事找到我,说感觉好像nginx那边有一些转发并没有到达后端。 我问,怎么了? 她说的也非常具体,第一是常规访问服务,然后返回的状态是401,提示令牌失效(Token Invalid )。接着直接访问后端所代理的服务,然后就是正常的。 哦,听上去很明显啦,事儿就是到nginx这里卡住了呗。我问她详细的情况是怎样的? 她说获取验证码以及登陆都是没有问题的,但是就是这里的token没有传过去,token是放在请求头里边的,这个头的名称是“old_token”。 听上去一切好

因上努力,果上随缘。但行好事,莫问前程。 5234

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Nginx做转发时,带下划线的header内容丢失

转载自:https://blog.youkuaiyun.com/bigtree_3721/article/details/80991137今天在线上切换系统时,发现后端微服务报错,说xx header的数值为空,也就是没有传。查看browser信息,发现前端页面系统发出时是带了这个header (user_id)的。也是就header user_id达到后端微服务时没有了。那么代码没有改...

weixin_34174105的博客 319

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Nginx反向代理,header参数带下换线(_),导致接口调用不通,丢失header丢失的问题

求接口Header参数带下划线,Nginx反向代理后参数丢失

一颗浑身披带雪花的松树---[雪松] 3128

IDEA的使用指南

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

http请求经过nginx,带下划线的header 丢失问题

在最近开发中遇到一个问题,记录一下。 有一个http请求,需要携带一个请求头,当时定义的请求头使用的下划线模式,header_name这样。然后神奇的事情就发生了。 我自己在postman上测试都没问题,后端能正常接收并响应。移动端请求,后端就读取不到对应的请求头。很奇怪。然后自己这边又拿postman测试,发现也获取不到请求头了。 然后就尝试换成其他的请求头,发现只有携带下划线才接收不到,换成 - 短横就可以了。 于是又去搜了一下,发现原来是nginx的问题。ngixn默认不支持下划线的header,带下

Wu_Shang001的博客 1263

Nginx反向代理后无法获取header带下划线的头信息

nginx默认是不支持header有下划线的参数,会被直接丢弃。

stupid_leilei的专栏 2143

nginx代理转发导致header带下划线参数名丢失

nginx代理转发导致header参数丢失问题描述原因猜想问题解决萌新发言,不喜勿喷,欢迎大佬们指出不当之处 问题描述 使用nginx代理转发A项目的时候,调用nginx,发现A项目报错,header中参数丢失(过滤器拦截,有提示缺失的参数) 原因猜想 因为其他项目也是走的nginx代理转发,header中的参数并没有丢失的情况,然后对比下A项目和其他正常的项目的参数,发现A项目丢失的参数都是带有...

GuessBUG的博客 1185

nginx 获取header 请求参数_Nginx获取自定义头部header的值

1、nginx是支持读取非nginx标准的用户自定义header的,但是需要在http或者server下开启header的下划线支持:underscores_in_headers on;2、比如我们自定义header为X-Real-IP,通过第二个nginx获取该header时需要这样:$http_x_real_ip; (一律采用小写,而且前面多了个http_)3、如果需要把自定义header传递...

weixin_39752800的博客 5073

nginx反向代理proxy_set_header自定义header头无效

为什么80%的码农都做不了架构师?>>> ...

weixin_34174105的博客 2277

NGINX代理导致请求头header中的信息丢失问题

问题描述:在请求时往请求头header中放入了签名sign_val信息,在接收请求时再从header中拿出,在本地调试时是可以的,但通过NGINX代理之后发现拿不到。 解决: 1.NGINX代理时加上请求头信息: location / { proxy_next_upstream http_502 http_504 error timeout invalid_header;...

星坠竹空 3万+

带下划线的请求头获取不到值

bug记录,带下划线的请求头获取不到值bug解决办法 bug 在本地调试的时候,是可以获取的,但是部署到测试服务器上就获取的一直是null 然后,发现服务器是通过nginx代理的,在nginx的默认配置中,会自动过滤掉请求头里的下划线,所以 我们需要打开nginx的下滑线配置 解决办法 http部分 增加underscores_in_headers on; ...

qq_41917197的博客 1460

nginx不转发带下划线的请求头

应用程序会自定义一些请求头用于业务处理,比如登录成功后,应用通常会把token信息存于一个自定义头部,但是如果请求头不符合HTTP规范,会被NGINX丢弃掉,有的客户端甚至会报错。,因此在命名自定义请求头的时候,可以用中划线替换。HTTPS规范中,请求头不允许带有下划线。

liuzhenghua66的博客 493

nginx做转发时,带'_'的header内容丢失

nginx做转发时,带’_’的header内容丢失原本在测试环境测试通过的APP,今天准备切到线上环境做最后测试,结果发现了错误。查看日志发现是APP端发送的http请求中的header内容丢失了。那么代码没有改动,怎么平白无故会丢失头信息? 于是想到两个环境的不同之处在于线上是通过nginx做的代理转发,会不会是nginx搞的鬼?于是搜索“nginx request header 丢失”,果不其

Nazir2513的专栏 5925

nginx proxy_set_header设置、自定义header

proxy_set_header 就是可设置请求头-并将头信息传递到服务器端。不属于请求头的参数中也需要传递时 重定义下就行啦。

yh250648050的博客 6188
上一篇: Nginx实战:日志打印自定义请求头
下一篇: Nginx实战:LUA脚本_环境配置安装
龙叔运维
博客等级 码龄11年 1万+粉丝 106原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

龙叔运维

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值