On 5/21/07, West, Chris <[EMAIL PROTECTED]> wrote:
I am trying to perform some conditional logic in my httpd.conf file
comparing two environment variables, the result of which will be used to
limit the logging in my referer logfile. I have tried using both SetEnvIf
and RewriteCond to perform the logic in the following ways.
1: Using SetEnvIf
SetEnvIf Referer SERVER_NAME dont_log_ref
CustomLog "|rotatelogs.exe logs/referer_log_iuk 86400" combined
env=!dont_log_ref
2. Using Rewrite rules
#
# Set an env variable when we don't want to log the referer.
#
RewriteCond %{HTTP_REFERER} ^.*%{SERVER_NAME}.*$
RewriteRule .* - [E=dont_log_referer:true]
CustomLog "|rotatelogs.exe logs/referer_log_iuk 86400" combined
env=!dont_log_referer
For both methods, I have tried referencing SERVER_NAME variables as above
and also in form %{SERVER_NAME} and also %{ENV:SERVER_NAME}. None of these
seem to work for the comparison however
If I hardcode the comparison it works OK
i.e.
RewriteCond %{HTTP_REFERER} ^.*my_test_server.*$
RewriteRule .* - [E=dont_log_referer:true]
CustomLog "|rotatelogs.exe logs/referer_log_inter 86400" combined
env=!dont_log_referer
Any help would be much appreciated.
Is the "SERVER_NAME" environment variable set in the shell that is
used to start Apache; or is it set elsewhere? In the context of an
discussion about apache "Environment variable" can mean two things, it
is important to know which meaning it has here.
Now, as far as I know you cannot use environment variables in the
regex part of a SetEnvIf statement. So your first solution will not
work.
the second solution can work, but you need to refer to
%{ENV:SERVER_NAME} if you want an environment variable, and not a
mod_rewirte variabla.
Krist
--
[EMAIL PROTECTED]
Bremgarten b. Bern, Switzerland
--
A: It reverses the normal flow of conversation.
Q: What's wrong with top-posting?
A: Top-posting.
Q: What's the biggest scourge on plain text email discussions?
---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: [EMAIL PROTECTED]
" from the digest: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]