Eygene Ryabinkin schrieb:
Julian,
Wed, Apr 04, 2007 at 01:12:54PM +0200, Julian Reschke wrote:
Pardon for my stupideness, but what 'that reason' you are talking
about? The previous letter was rather long and I fail to identify
the exact point you're commenting. Could you, please, elaborate
a bit?
Sorry.
What I meant by "reason" was the fact that the "Destination" header (and some
aspects of the "If" header) require absolute URIs, which is problematic when
there's a reverse proxy in the transmission path. All the issues around to
rewrite or not to rewrite headers go away once these headers use absolute paths
(well, as long as the reverse proxy doesn't also rewrite paths, but I would
claim that this is nearly impossible to get right with WebDAV).
Ahh, OK, thanks for the clarification. I had just tried to do path
rewriting and I see that things are bad: I am using Git over HTTP
and it fails badly with the path rewriting. May be will try to
understand why, but I am not sure.
So, your point is that Apache should make no attempts to rewrite
the 'Destination' header for DAV and clients should use absolute
paths for DAV. Or we still need 'Destination' rewriting? In the
reverse proxy mode, I mean.
Thank you!
I'd say Path rewriting is very hard, host rewriting is possible.
With RFC2518bis, clients can use absolute paths in some places where
before an absolute URI was required. This makes host rewriting much
easier, but of course that change needs to get deployed.
1) Servers, such as Apache/moddav should start supporting absolute paths
in the "Destination" and "If" headers ASAP. That's a backwards
compatible change and should be easy to deploy. Unfortunately, there's
no simple way to check whether a server allows path notation, except by
explicitly checking for DAV compliance level "3"
(<http://greenbytes.de/tech/webdav/draft-ietf-webdav-rfc2518bis-18.html#rfc.section.18.3>).
2) Clients should use absolute paths as soon as they see that the remote
server allows this.
Of course all of this is of little value until widely deployed
servers/clients start using it.
Best regards, Julian