Is the DirectorySlash side of things ever useful for these methods? On Sat, Jan 25, 2014 at 11:09 PM, <chr...@apache.org> wrote: > Author: chrisd > Date: Sun Jan 26 04:09:45 2014 > New Revision: 1561447 > > URL: http://svn.apache.org/r1561447 > Log: > Skip DirectoryIndex execution unless method is GET or POST, restoring > 2.2 behavior when using mod_dav. PR 54914. > > Otherwise, variable behavior results: if no DirectoryIndex file is found, > mod_dav's r->handler runs as expected. But if an index file is found, > r->handler will be changed by ap_internal_fast_redirect() to something > other than mod_dav's r->handler, while r->method is left unchanged, > usually leading to a 405 response. > > Modified: > httpd/httpd/trunk/CHANGES > httpd/httpd/trunk/modules/mappers/mod_dir.c > > Modified: httpd/httpd/trunk/CHANGES > URL: > http://svn.apache.org/viewvc/httpd/httpd/trunk/CHANGES?rev=1561447&r1=1561446&r2=1561447&view=diff > ============================================================================== > --- httpd/httpd/trunk/CHANGES [utf-8] (original) > +++ httpd/httpd/trunk/CHANGES [utf-8] Sun Jan 26 04:09:45 2014 > @@ -1,6 +1,9 @@ > -*- coding: utf-8 > -*- > Changes with Apache 2.5.0 > > + *) mod_dir: Default to 2.2-like behavior and skip execution when method is > + neither GET nor POST, such as for DAV requests. PR 54914. [Chris > Darroch] > + > *) mod_rewrite: Rename the handler that does per-directory internal > redirects to "rewrite-redirect-handler" from "redirect-handler" so > it is less ambiguous and less likely to be reused. [Eric Covener] > > Modified: httpd/httpd/trunk/modules/mappers/mod_dir.c > URL: > http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/mappers/mod_dir.c?rev=1561447&r1=1561446&r2=1561447&view=diff > ============================================================================== > --- httpd/httpd/trunk/modules/mappers/mod_dir.c (original) > +++ httpd/httpd/trunk/modules/mappers/mod_dir.c Sun Jan 26 04:09:45 2014 > @@ -274,6 +274,10 @@ static int fixup_dir(request_rec *r) > return HTTP_MOVED_PERMANENTLY; > } > > + if (r->method_number != M_GET && r->method_number != M_POST) { > + return DECLINED; > + } > + > if (d->checkhandler == MODDIR_ON && strcmp(r->handler, DIR_MAGIC_TYPE)) { > return DECLINED; > } > >
-- Eric Covener cove...@gmail.com