This is just plain weird.
I have put the following in an .htaccess
file:
RewriteRule ^a-file-on-the-server$ index.php [E=let_me_in:test]
And in my PHP script, I have the following:
print_r($_ENV);
...which prints out all the environment variables.
When I go to mydomain.com/a-file-on-the-server
, I get the output:
Array ( [DOCUMENT_ROOT] => ******** [GATEWAY_INTERFACE] => CGI/1.1 [HTTP_ACCEPT] => application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 [HTTP_ACCEPT_CHARSET] => ISO-8859-1,utf-8;q=0.7,*;q=0.3 [HTTP_ACCEPT_ENCODING] => gzip,deflate,sdch [HTTP_ACCEPT_LANGUAGE] => en-US,en;q=0.8 [HTTP_CACHE_CONTROL] => max-age=0 [HTTP_CONNECTION] => keep-alive [HTTP_COOKIE] => ******** [HTTP_HOST] => ******** [HTTP_USER_AGENT] => Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.99 Safari/533.4 [PATH] => /bin:/usr/bin [QUERY_STRING] => [REDIRECT_STATUS] => 200 [REMOTE_ADDR] => ******** [REMOTE_PORT] => 36345 [REQUEST_METHOD] => GET [REQUEST_URI] => ******** [SCRIPT_FILENAME] => ******** [SCRIPT_NAME] => ******** [SERVER_ADDR] => ******** [SERVER_ADMIN] => ******** [SERVER_NAME] => ******** [SERVER_PORT] => 80 [SERVER_PROTOCOL] => HTTP/1.1 [SERVER_SIGNATURE] => [SERVER_SOFTWARE] => Apache [UNIQUE_ID] => ******** )
As you can see, the environment variable is not showing up. What am I doing wrong?