今天在使用ngx.req.set_header 來添加自定義頭信息在代理請求的時候,發現自定義的請求頭信息怎么都轉發不過去了,后端服務器一直收不到這個頭,我就納悶了,於是使用排除法來排查到底哪里有問題。
以下都是頭信息里面的冒號左側部分,舉個例子:
depath_env: f12
使用下划線來定義頭信息
dpath_env
這種頭信息在轉發的時候也找不到在后端服務器,繼續排除。
直接寫文字
env
這種頭信息在轉發消息的時候,后端能夠找到。
使用冒號連接
env:prod
這種頭信息在轉發的時候也找不到在后端服務器
使用橫線連接
dpath-env
這種頭信息在轉發的時候可以找到在后端服務器。有效
最終結論
頭信息里面使用冒號、下划線的,都沒辦法轉發到后端服務器,所以后端服務器就接受不了,只能寫成橫線的形式才可以。