需要删除创建的标题中不需要的前缀

需要删除创建的标题中不需要的前缀

我正在尝试生成特定标头来模仿服务提供商。但是,我的标头中不断HTTP_添加前缀。

配置文件:

<IfModule headers_module>
    RequestHeader set ntPrincipal "abcdef"
</IfModule>

PHP 输出,

[HTTP_NTPRINCIPAL] => abcdef

所需的标题必须是:

[NTPRINCIPAL] => abcdef

我尝试了以下方法,但也不起作用(使用这个方法我根本看不到标题):

<IfModule headers_module>
    Header set ntPrincipal "abcdef"
</IfModule>

更新 #1

我尝试模仿的服务提供商/环境是使用 Shibboleth SP 的 Apache。

更新 #2

此本地副本在 Windows 7 上的 WAMP 上运行。我刚刚进行了以下操作,它们似乎显示正常:

var_dump(getallheaders());

输出:

'ntPrincipal' => string 'abcdef' (length=6)

提示在这里找到

这样做对我们来说是适得其反的。我的开发/测试/生产环境在 Shibboleth 正确提供这些标头的情况下运行良好,我不明白为什么我不能在我的配置文件中指定它们并让它们看起来像是由 Shibboleth 提供的。

答案1

对于 PHP 来说,您必须在配置文件中使用以下语法来获取没有HTTP_前缀的键:

SetEnv ntPrincipal "abcdef"

来源

相关内容