From: Pete Yadlowsky Date: 2004-09-14T23:37:38+09:00 Subject: mod_ruby and RubyPassEnv Hi, We recently ran into a problem caused by mod_ruby's practice of wiping the environment clean and building it from scratch. A certain Perl CGI script would get served by an Apache process (v1.3.29, mod_ruby 1.1.2, AIX4.3) whose environment had previously been scrubbed by mod_ruby. This particular Perl script expected to see the timezone variable 'TZ', but, uh-oh, it's not there! In this case, we could get around the problem by saying: RubyPassEnv TZ but in this diverse operating environment it's quite likely there would be similar incidents with other scripts and other missing environment variables. So, I modified mod_ruby (ruby_config.c) a bit to accept: RubyPassEnv * which instructs it to pass the existing environment in its entirety; i.e. the contents of char **environ. I just thought I'd pass this idea along in case someone else finds it useful as well. There's an entry in mod_ruby's ChangeLog: 2/23/1999: mod_ruby.c (setup_env): restore environment variables. which would seem to indicate that, once upon a time, mod_ruby used to restore the environment. If I'm reading this correctly, why did it stop doing so? Just wondering. -- Pete Yadlowsky ITC Unix Systems Support University of Virginia