You are only going to have Transhandlers defined in the main server or virtual host, not in any <Location> or <Directory> containers.
Check and see if you have any other Transhandlers defined earlier in your httpd.conf file. If an earlier Transhandler returns OK, then later ones won't be called. Quoting Rasoul Hajikhani ([EMAIL PROTECTED]): > A funny thing is happening with my PerlTransHandler... > It is not being called at all... :( > I have added warn messages but they never appear in the error log. > I am at a loss and hoping that some one may have an answer... > -r > > Lyle Brooks wrote: > > > > Quoting Rasoul Hajikhani ([EMAIL PROTECTED]): > > > Hello folks, > > > I am trying to implement a simple PerlTransHandler to change: > > > > > > http://myserver/ > > > > > > to > > > > > > http://myserver.rhythm.com/ > > > > > > And here is my code: > > > > > > package MIS::GENERAL::FixURL; > > > > > > use Apache::Constants qw(DECLINED); > > > > > > use strict; > > > > > > sub handler > > > { > > > my $r = shift; > > > my $uri = $r->uri; > > > > > > return DECLINED if ($uri =~ m/^.+\.rhythm\.com$/) > > > > IIRC, the $r->uri method is normally not going yield the hostname or > > scheme (unless this is a proxy request). > > > > So for a request to http://www.rhythm.com/test/myfile.html > > > > $r->uri is going to return only > > > > /test/myfile.html > > > > You may want to do some logging to verify. > > > > Add > > > > use Apache::Log (); > > > > then inside your handler... > > > > my $log = $r->server->log; > > > > $log->debug("Processing request " . $r->uri); > > > > Hope that helps. > > > > > > > > $uri =~ s/^(.+)/$1\.rhythm\.com/; > > > $r->uri($uri); > > > > > > return DECLINED; > > > } > > > > > > 1; > > > > > > Here is my https.conf entry: > > > PerlTransHandler MIS::GENERAL::FixURL > > > > > > And here is my error when I type: s7.rhythm.com > > > > > > Invalid URI in request GET / HTTP/1.0 > > > > > > But I get no error with: http://s7/ > > > > > > Can some one tell me what am I doing wrong? > > > > > > Thanks in advance > > > -r