授权头和apache_request_headers函数

Ben*_*air 4 php http-headers

我一直在努力让apache_request_headers()在我的服务器上工作.我已升级到最新的PHP 5.4稳定版并将我的PHP处理程序更改为FastCGI,因为这允许您运行apache_request_headers()函数.由于权限问题,我宁愿不将PHP作为apache模块运行.

我的新设置一切正常,但唯一的问题是apache_request_headers()似乎没有拿到我的OAuth 2服务器所需的"授权"标题.

我发送的标题是:

Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Run Code Online (Sandbox Code Playgroud)

但是,如果我发送以下标题(或"授权"以外的任何标题),它的工作原理如下:

X-Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Run Code Online (Sandbox Code Playgroud)

令人沮丧......关于如何让这个工作的任何想法?

Ben*_*air 12

经过一番挖掘后,我发现了以下内容.如果您没有使用FastCGI PHP处理程序或者不将PHP作为apache模块运行,则它完全不需要apache_request_headers().

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

另外,我需要的另一个标题是Content-Type,我只能在apache_request_headers()函数中获取.可能对某人有帮助:)

RewriteRule .* - [E=HTTP_CONTENT_TYPE:%{HTTP:Content-Type}]
Run Code Online (Sandbox Code Playgroud)