lua+nginx设置自定义请求头信息在转发请求

今天在使用ngx.req.set_header 来添加自定义头信息在代理请求的时候,发现自定义的请求头信息怎么都转发不过去了,后端服务器一直收不到这个头,我就纳闷了,于是使用排除法来排查到底哪里有问题。

以下都是头信息里面的冒号左侧部分,举个例子:

depath_env: f12

使用下划线来定义头信息

dpath_env

这种头信息在转发的时候也找不到在后端服务器,继续排除。

直接写文字

env

这种头信息在转发消息的时候,后端能够找到。

使用冒号连接

env:prod 

这种头信息在转发的时候也找不到在后端服务器

使用横线连接

dpath-env 

这种头信息在转发的时候可以找到在后端服务器。有效

最终结论

头信息里面使用冒号、下划线的,都没办法转发到后端服务器,所以后端服务器就接受不了,只能写成横线的形式才可以。