将任意的http请求头传给nginx,然后传给php

我有这个在nginx和fastcgi(php-fpm)上运行的web服务。 Web服务被一些embedded的http客户端使用,这些客户端在使用服务时需要发送一些任意的http请求标头。 例如:

CLIENT_ID: client1 CLIENT_AUTH_TOKEN: d84ldx 

或类似的东西。

我不确定这种请求是否会在nginx到达时被捕获。 如果是这样,nginx将如何存储额外的HTTP头的值? 以及如何告诉nginx将parameter passing给php?

我已经试过了

 fastcgi_param CLIETN_ID $client_id 

conf / fastcgi_paramsconfiguration文件,我认为这将帮助nginx存储在CLIENT_ID什么作为$ client_id参数。 我也放

 fastcgi_param CLIENT_ID $client_id 

只需获取$ client_id中存储的内容并将其作为键入的“CLIENT_ID”传递给php,这样php就可以用$ _SERVER ['CLIENT_ID']来访问它。

不幸的是,上面没有解决。 当我做

 nginx -t 

我得到错误“未知参数client_id”。 我在哪里弄错了,如何解决?

谢谢。

请求标头被分配了以$ http_开始的variables,因此Client-Id的请求标头将存储在$ http_client_id中。 尝试

 fastcgi_param CLIENT_ID $http_client_id; 

我很确定,nginx已经传递了所有的http头文件,所以它可能已经可以作为$ _SERVER ['HTTP_CLIENT_ID']

你有没有检查头文件是否在$ _SERVER超全局中可见? 我怀疑这可能“只是工作”,而不必做任何事情。