> On 29 Sep 2015, at 10:38 am, Josh Rodriguez <[email protected]> wrote:
>
> I'm trying to use Flask (via mod_wsgi) and mod_dav in the same location. I
> want mod_wsgi/Python to handle GET and POST requests (because I want to
> return enhanced HTML directory listings) while mod_dav handles methods like
> OPTIONS and PROPFIND.
>
> I'm getting an 400 error with the log message "The URL contains extraneous
> path components. The resource could not be identified." when I try to access
> a resource via WebDAV.
>
> I think I've figured out what's up.
>
> I'm using WSGIScriptAlias as follows:
>
> `WSGIScriptAlias / /usr/local/apache2/htdocs/test/test.wsgi`
>
> But when I use a WebDAV client to connect to `/files/`, I find that the path
> that's passed to mod_dav has turned into:
>
> `/usr/local/apache2/htdocs/test/test.wsgi/files`
>
> Which makes sense, given the alias directive.
>
> My question is, is there a way to keep this from happening for WebDAV
> requests? I'm assuming I can't do anything in Flask, that I need to catch and
> modify the request before it reaches mod_dav.
As a first guess, try adding:
<Location /files>
SetHandler default-handler
</Location>
I am not sure whether this will interact with WebDav properly or not, but I
think would normally stop mod_wsgi at least interfering with requests under
that URL. It may be necessary to work out what the handler name for WebDav is
and use it, although from memory I suspect it doesn’t use the handler concept.
Graham
--
You received this message because you are subscribed to the Google Groups
"modwsgi" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.