我正在研究 php 的功能,以避免对 Intranet 应用程序进行手动身份验证。
我目前使用 apache_request_headers() 来获取标题和 $headers['Authorization'] 来读取授权。
在我的 wamp 的服务器(php 5.5.12 和 apache 2.4.9)上很好,但在 prod(PHP 版本 5.3.3 和 Apache 2.2.15(CentOS))上不行。我在 Internet Explorer 8 上。
所以我需要你的帮助:我应该检查什么?如何在 Apache 2.2.15 (CentOS) 上使用 php 获得 apache header 授权?
最佳答案
大多数客户端 header 都可以通过 $_SERVER['HTTP_xxx']
访问,例如,$_SERVER['HTTP_ACCEPT_ENCODING']
.这也适用于非标准 header ,并且应该适用于所有 Web 服务器,而不是像您的示例代码那样依赖于 Apache。
但是,Authorization
标题是一个异常(exception)。 PHP 在收到请求时解码该 header ,并将用户名和密码分别放在 $_SERVER['PHP_AUTH_USER']
中。和 $_SERVER['PHP_AUTH_PW']
.
关于php - 获取 header [授权] php/apache,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24142690/