Thanks Geoff, you are an absolute genius. I wrote a little PerlFixupHandler to solve the issue as that was most appropriate for the configuration i had.
thanks again, simran. On Fri, 2002-11-15 at 00:57, Geoffrey Young wrote: > > > simran wrote: > > Hi All, > > > > I have a auth protected area for the apache server: > > > > Aka, the location /auth is password protected by Perl*Handlers and > > usually i only write other PerlHandlers that do things under that > > location. > > > > However, i need to put a .shtml file into that diretory (it is also a > > normal directory under the document root). > > > > Putting .html files there is no problem, they display fine, however, > > .shtml files do not get parsed when in that directory (they work fine > > from everywhere else on the server). I assume this is because under that > > directory, SetHandler is set to perl-script and not server-parsed? > > yes, exactly. SetHandler gets the highest priority, and overrides > things such as AddHandler you may have set elsewhere. > > > > Is there a way i can use the "Files" directive (or any other way) to get > > the server to parse .shtml files in that directory? > > <Files> won't help you once you're in the <Directory> covered by > SetHandler (at least I don't think so, but it's early). I'd probably > write a PerlFixupHandler to undo the SetHandler for .shtml files or > something if you really needed to override your global SetHandler for > a given <Directory>. it's generally as simple as > > $r->handler('server-parsed') if $r->filename =~ m!\.shtml$!; > > but you could probably just as easily remove the SetHandler > perl-script in that directory and exchange it for the proper set of > AddHandler directives. > > HTH > > --Geoff > > > >