Parece que para PHP, você tem que usar a seguinte sintaxe no arquivo de configuração para obter chaves sem o prefixo HTTP_
:
SetEnv ntPrincipal "abcdef"
Estou tentando gerar cabeçalhos específicos para imitar um provedor de serviços. No entanto, continuo recebendo o prefixo HTTP_
adicionado aos meus cabeçalhos.
Arquivo de configuração:
<IfModule headers_module>
RequestHeader set ntPrincipal "abcdef"
</IfModule>
Saída em PHP,
[HTTP_NTPRINCIPAL] => abcdef
O cabeçalho desejado precisaria ser:
[NTPRINCIPAL] => abcdef
Eu tentei o seguinte que também não funciona (não vejo o cabeçalho usando isso):
<IfModule headers_module>
Header set ntPrincipal "abcdef"
</IfModule>
Atualização # 1
O provedor de serviços / ambiente que estou tentando imitar é o Apache usando o Shibboleth SP.
Atualização nº 2
Esta cópia local está sendo executada no WAMP no Windows 7. Acabei de fazer o seguinte e eles parecem aparecer corretamente:
var_dump(getallheaders());
Saída:
'ntPrincipal' => string 'abcdef' (length=6)
Ter que fazer isso será contraproducente para nós. Meus ambientes de produção / teste / desenvolvimento funcionam bem com Shibboleth fornecendo esses cabeçalhos corretamente, não consigo ver como não posso especificá-los no meu arquivo de configuração e tê-los aparecer como se fossem servidos pelo Shibboleth.
Parece que para PHP, você tem que usar a seguinte sintaxe no arquivo de configuração para obter chaves sem o prefixo HTTP_
:
SetEnv ntPrincipal "abcdef"
Tags php apache-2.2