Eu tenho um RewriteCond em .htaccess semelhante a:
RewriteCond "%{ENV:FOO}" =bar
Mas o ${ENV:FOO} está sendo expandido para o valor de FOO , está sempre em branco.
Por exemplo, se eu SetEnv FOO "bar" antes do RewriteCond e, em seguida, aumentar o RewriteLogLevel , obtenho isso no meu log de regravação:
RewriteCond: input='' pattern='=bar' => not-matched
O que estou fazendo errado aqui? Como posso fazer com que variáveis de ambiente se expandam dentro de RewriteCond s?
Além disso, se eu adicionar uma bobagem RewriteRule como RewriteRule .* %{ENV:FOO} , eu posso ver no registro de reescrita que a variável está sendo corretamente expandida lá.
Minha versão do Apache é 2.2.17.
Editar : encontrei outra referência para esse problema. Parece que uma "solução" é usar SetEnvIf em vez de SetEnv … = \
Além disso, não parece que a localização do SetEnv tenha algum efeito. Eu coloquei no httpd.conf e no .htaccess , e nem trabalho.