in reply to How to execute web code on server start only?

The Apache HTTP server lets you define your own environment variables which are accessible from your CGI script just like the standard CGI variables.

  • Comment on Re: How to execute web code on server start only?

Replies are listed 'Best First'.
Re^2: How to execute web code on server start only?
by Anonymous Monk on Jan 18, 2010 at 14:20 UTC
    No it doesn't, not from CGI, they don't persist, try it, I just did , it didn't work :)
    #!/usr/bin/perl -- ## ## printenv -- demo CGI program which just prints its environment ## print "Content-type: text/plain; charset=iso-8859-1\n\n"; if( $ENV{QUERY_STRING} ){ $ENV{OneTimeEnvTestWillItPersistProbablyNot}=1; print "so did OneTimeEnvTestWillItPersistProbablyNot persist? thou +ght not\n\n\n"; } else { print "set OneTimeEnvTestWillItPersistProbablyNot=1\n"; print "now append ?foo to the url to see if OneTimeEnvTestWillItPe +rsistProbablyNot persists \n\n\n"; } foreach $var (sort(keys(%ENV))) { $val = $ENV{$var}; $val =~ s|\n|\\n|g; $val =~ s|"|\\"|g; print "${var}=\"${val}\"\n"; }

      You cannot set (global) environment variables from within a CGI script. Please read this.