You'd have to locate the place where GLOBAL::script_dir_url gets set, perhaps by grepping for script_dir_url. Since you've described earlier that this code works on a *NIX server and not Windows, you might want to check if you've got the same module versions installed on both, although without knowing what the code that sets the variable looks like, I can't say which ones. Also, looking at the %ENV variables provided by Apache to the CGIs on each system might give a clue, e.g. with a test script that simply does use Data::Dumper; print Dumper \%ENV;.