My site
Main | Apache LimitExcept returning Error 400 on permitted method - Forum | Registration | Login
[ New messages · Members · Forum rules · Search · RSS ]
  • Page 1 of 1
  • 1
Forum » Xampp » XAMPP » Apache LimitExcept returning Error 400 on permitted method
Apache LimitExcept returning Error 400 on permitted method
ValentinoDate: Thursday, 2011-09-08, 11:50 AM | Message # 1
Colonel
Group: Administrators
Messages: 186
Reputation: 196
Status: Offline
I have the following directive in my Apache httpd.conf:

<LimitExcept OPTIONS PROPFIND REPORT>
deny from all
</LimitExcept>
OPTIONS and PROPFIND work as expected, but REPORT returns 400: Bad Request. Remove the LimitExcept alltogether and everything works as expected.

Any ideas on why this might be?

(Please see my question here to see what I'm trying to do).

The access log shows:

192.168.161.1 - - [21/Jun/2010:08:42:26 +1000] "REPORT /logs/MV101Apps/!svn/bc/7699/MyApp/MyApps.edp HTTP/1.1" 400 101

The error log shows:

[Mon Jun 21 08:42:26 2010] [error] [client 192.168.161.1] client denied by server configuration: C:/Program Files/CollabNet/Subversion Server/httpd/htdocs/logs

Update

Ok, a quick inspection reveals that either with or without the <LimitExcept> the REPORT URL stays the same. This is what the log looks like without the <LimitExcept> (everything else in the config stayed the same):

192.168.161.1 - - [22/Jun/2010:21:03:42 +1000] "REPORT /logs/MV101Apps/!svn/bc/7821/MyApp/MyApps.edp HTTP/1.1" 200 115

(note that that URL is a Subversion URL as generated by the command svn log - I'm not the one adding the !svn to it)

The complete VirutalHost for /logs/ looks like this:

<Location /logs/>
DAV svn
SVNParentPath C:\SVN
<LimitExcept OPTIONS PROPFIND REPORT>
deny from all
</LimitExcept>
</Location>
 
ValentinoDate: Thursday, 2011-09-08, 11:51 AM | Message # 2
Colonel
Group: Administrators
Messages: 186
Reputation: 196
Status: Offline
This is what the latest mod_dav.c looks like in 2.2.15 (edited for brevity):

static int dav_method_report(request_rec *r)
{
int result;
apr_xml_doc *doc;

if ((result = ap_xml_parse_input(r, &doc)) != OK)
return result;
if (doc == NULL) {
return HTTP_BAD_REQUEST;
}
So, my gut instinct is that ap_xml_parse_input(r, &doc)) is leaving doc=NULL; based on not being able to access that questionable doc name (it has a ! in it??) and spitting back a 400:

"REPORT /logs/MV101Apps/!svn/bc/7699/MyApp/MyApps.edp HTTP/1.1"
...

client denied by server configuration: C:/Program Files/CollabNet/Subversion Server/httpd/htdocs/logs
...it smells like the problem lies in how virtual /logs/ from the access_log is mapped to this directory in error_log, and if there are proper access controls to allow the resources to be read from the location. We need to see all that config info next.
 
Forum » Xampp » XAMPP » Apache LimitExcept returning Error 400 on permitted method
  • Page 1 of 1
  • 1
Search:

V & M Company © 2010 
made by VALENTINO
Free web hostinguCoz