Nginx proxying WebDAV = no love

Michael Shadle mike503 at gmail.com
Thu Jul 9 03:07:52 MSD 2009


ah i would assume if you say proxy_pass you're literally passing
*anything* over to the upstream. does nginx actually inspect it first?

i was most likely only noticing the nginx DAV support, and it sets
r->method but i don't see anything that happens with those actions...


On Wed, Jul 8, 2009 at 3:27 PM, Cliff Wells<cliff at develix.com> wrote:
> I was under the impression that Nginx simply passes these along.   Note
> that I'm proxying, not using Nginx DAV support.
>
> If this didn't work, then I'm not sure how people succeed in proxying to
> Apache/mod_svn, etc.
>
> Cliff
>
>
> On Wed, 2009-07-08 at 15:08 -0700, Michael Shadle wrote:
>> Does nginx even support propfind? Or options?
>>
>> I see it in the code, but I don't see anything that happens when
>> someone issues the verb.
>>
>> It's almost like it stubbed out for future expansion (or so it doesn't
>> reply with "invalid request" at least)
>>
>> On Wed, Jul 8, 2009 at 2:14 PM, Cliff Wells<cliff at develix.com> wrote:
>> > I'm experimenting with WebDAV using pywebdav:
>> >
>> > http://code.google.com/p/pywebdav/
>> >
>> > It appears to work quite well if I connect to it
>> > directly (using either Nautilus and Cadaver as client).
>> >
>> > However, when I attempt to proxy to it via Nginx,
>> > I get messages that it's not a WebDAV-enabled share.
>> >
>> > Here's my nginx.conf:
>> >
>> > http {
>> >    include       mime.types;
>> >    default_type  application/octet-stream;
>> >
>> >    server {
>> >        listen       80;
>> >        server_name  _;
>> >
>> >        location / {
>> >            proxy_pass_header Server;
>> >            proxy_set_header  Host $http_host;
>> >            proxy_set_header  X-Forwarded-For $remote_addr;
>> >            proxy_pass        http://127.0.0.1:8008;
>> >        }
>> >    }
>> > }
>> >
>> >
>> > Cadaver reports the following (nautilus message isn't too informative):
>> >
>> > $ cadaver http://localhost/
>> > Could not access / (not WebDAV-enabled?):
>> > Unknown transfer-coding in response
>> > Connection to `localhost' closed.
>> > dav:!>
>> >
>> >
>> > I can see the request reaches pywebdav:
>> >
>> > localhost - - [08/Jul/2009 14:10:40] "OPTIONS / HTTP/1.0" 200 -
>> > localhost - - [08/Jul/2009 14:10:40] "PROPFIND / HTTP/1.0" 207 -
>> >
>> >
>> > Nginx access log shows:
>> >
>> > 127.0.0.1 - - [08/Jul/2009:14:11:20 -0700] "OPTIONS / HTTP/1.1" 200 0 "-" "cadaver/0.23.2 neon/0.28.2"
>> > 127.0.0.1 - - [08/Jul/2009:14:11:20 -0700] "PROPFIND / HTTP/1.1" 207 593 "-" "cadaver/0.23.2 neon/0.28.2"
>> >
>> >
>> > Nginx error log shows nothing.
>> >
>> >
>> > Regards,
>> > Cliff
>> >
>> > --
>> > http://www.google.com/search?q=vonage+sucks
>> >
>> >
>> >
>>
> --
> http://www.google.com/search?q=vonage+sucks
>
>
>





More information about the nginx mailing list