Hi everyone,
I need your help. I've been trying to check a header variable provided by
top-level filter and proxy depending on it:
SetEnvIf SERVERSESSIONID ".+" AUTHENTICATED
RewriteCond %{ENV:AUTHENTICATED} 1
RewriteRule ^/(.*) https://backend:7792/authenticated/$1 [P,L]
ProxyPassReverse / https:// backend:7792/authenticated/
RewriteCond %{ENV:AUTHENTICATED} !1
RewriteRule ^/(.*) https:// backend:7792/unauthenticated/$1 [P,L]
ProxyPassReverse / https:// backend:7792/unauthenticated/
But it's like mod_rewrite can't see the variable (in the rewrite log):
applying pattern '^/(.*)' to uri '/'
RewriteCond: input='' pattern='1' => not-matched
applying pattern '^/(.*)' to uri '/'
RewriteCond: input='' pattern='!1' => matched
I saw one post
http://turboflash.wordpress.com/2010/05/27/apache-environment-variables-visibility-with-setenv-setenvif-and-rewriterule-directives/
that said that sometimes variables aren't visible, but I don't really
understand why. I think I'm missing something fundamental about how the httpd
works.
I'm using Apache 2.0.64 and the directives are in a virtual host.
Cheers,
Ryan