按照http规范,http自定义头部是使用-符号作为连接符。

而实际开发过程中,可能因为不清楚这个原因而使用_作连接符导致无法获取到自定义的头部。

用php做开发,打印整个$_SERVEER,发现使用_作连接符的变量并没有打印出来,而实际上接口请求是有这个参数的,可以把问题放到nginx上,问题可能是nginx与php-fpm的通信中间发生了点故事。

经过一翻搜索,得出一个结论:nginx会默认丢弃不规范的头部。

如何解决这个问题呢?

nginx.conf的http部分将下面的配置设置为on

 underscores_in_headers on; //默认下划线的是关闭状态,需要手动开启

参考资料:

标签: none

评论已关闭