Hello, this (longer) post deals with DirectoryIndex expansion, Apache::PerlRun (Registry gives the same) and CGI's url('-relative' => 1) method. The versions are 1.24, 2.68, 1.3.11 and 5.6.0+patches upto the end of May. In the end, there is a proposed patch for CGI.pm, but as I'm not sure if the behaviour is a bug or feature of mod_perl, I'm sending it to [EMAIL PROTECTED] as well, for comments. This config <LocationMatch ^/testing/(index\.pl)?$> SetHandler perl-script PerlSetVar PerlRunOnce On PerlSendHeader On PerlHandler Apache::PerlRun </LocationMatch> and request for https://server/testing/ leads to redirect, where the interesting values (printed via %ENV) are PATH_INFO=/ PATH_TRANSLATED=/www/ REDIRECT_PATH_INFO=/ REDIRECT_PATH_TRANSLATED=/www/ REDIRECT_REQUEST_URI=/testing/ REDIRECT_SCRIPT_FILENAME=/www/testing REDIRECT_SCRIPT_NAME=/testing REDIRECT_URL=/testing/ REQUEST_URI=/testing/ SCRIPT_FILENAME=/www/testing/index.pl SCRIPT_NAME=/testing/index.pl This confuses CGI.pm, because $q->url('-relative' => 1) returns 'testing', not '' as would be expected. If I change the config to be <LocationMatch ^/testing/index\.pl$> SetHandler perl-script PerlSetVar PerlRunOnce On PerlSendHeader On PerlHandler Apache::PerlRun </LocationMatch> the redirect seems to be much less aggresive and the values are REDIRECT_URL=/testing/ REQUEST_URI=/testing/ SCRIPT_FILENAME=/www/testing/index.pl SCRIPT_NAME=/testing/index.pl There is no PATH_INFO value here, as well. And the PATH_INFO being set in the previous case is the cause of the trouble. I believe that the following patch fixes the problem -- from '/testing/', even if the path_info is '/', the relative address still needs to stay '', not 'testing', otherwise '/testing/testing' is achieved in the link. --- CGI.pm.orig Mon Jun 5 14:04:12 2000 +++ CGI.pm Mon Jun 5 14:04:48 2000 @@ -2183,6 +2183,7 @@ # and path if (exists($ENV{PATH_INFO})) { my $decoded_path = unescape($ENV{PATH_INFO}); + $decoded_path =~ s!^/!!; substr($script_name,$index) = '' if ($index = rindex($script_name,$decoded_path)) >= 0; } } else { Comments are gladly welcome. -- ------------------------------------------------------------------------ Honza Pazdziora | [EMAIL PROTECTED] | http://www.fi.muni.cz/~adelton/ .project: Perl, DBI, Oracle, MySQL, auth. WWW servers, MTB, Spain. ------------------------------------------------------------------------