tags:

views:

246

answers:

1

For an application based on Zend Framework I use apaches SetEnv in .htaccess. I use this on test, staging and production servers like so:

SetEnv APPLICATION_ENVIRONMENT production

On the staging server I couldn't read this env var in PHP. However when I did a var_dump( $_ENV ) in php I got the value but the key was prepended with REDIRECT_ becoming

REDIRECT_APPLICATION_ENVIRONMENT

Can anybody explain why this is happening, and how I can prevent this?

+1  A: 

I'm guessing you have mod_rewrite rules in your .htaccess as well for Zend? I believe it may be mod_rewrite prepending that when it does a redirect so that the value won't be overridden by any new settings with the new URL.

Cryo
You guessed correct indeed. You might be right about mod_rewrite, but I don't believe the other servers show this behaviour too, and they have the exact same mod_rewrite setup. I'll have to check it out. Thanks so far.
fireeyedboy
@fireeyedboy I was actually surprised to find very little about this issue at all other than user comments in forum posts and no actual reliable source information. I did see one or two posts about it being Apache version specific, is your staging machine's Apache a different version than your dev and production? Are your dev and production the same and it's not doing it on either of those?
Cryo