You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2010/01/19 22:45:38 UTC

DO NOT REPLY [Bug 48576] New: MOVE or COPY in WebDAV fails with 404 when file extension is changed

https://issues.apache.org/bugzilla/show_bug.cgi?id=48576

           Summary: MOVE or COPY in WebDAV fails with 404 when file
                    extension is changed
           Product: Apache httpd-2
           Version: 2.2.3
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: mod_dav
        AssignedTo: bugs@httpd.apache.org
        ReportedBy: presslab@hotmail.com


For example move keepass.kdbx.tmp2 to keepass.kdbx fails with 404, but moving
keepass.kdbx.tmp to keepass.kdbx.tmp2 works fine.  This breaks the KeePass
program as it uses move in this fashion.

>From cadaver:

dav:/webdav/> mv keepass.kdbx keepass.kdbx.tmp
Moving `/webdav/keepass.kdbx' to `/webdav/keepass.kdbx.tmp':  succeeded.
dav:/webdav/> mv keepass.kdbx.tmp keepass.kdbx.tmp2
Moving `/webdav/keepass.kdbx.tmp' to `/webdav/keepass.kdbx.tmp2':  succeeded.
dav:/webdav/> mv keepass.kdbx.tmp2 keepass.kdbx
Moving `/webdav/keepass.kdbx.tmp2' to `/webdav/keepass.kdbx':  failed:
404 Not Found
dav:/webdav/> ls
Listing collection `/webdav/': succeeded.
        KeePass.zip                      6164267  Dec 26 16:25
        keepass.kdbx.tmp2                  38206  Jan 18 16:50
dav:/webdav/>

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


DO NOT REPLY [Bug 48576] MOVE or COPY in WebDAV fails with 404 when file extension is changed

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48576

--- Comment #2 from presslab@hotmail.com 2010-01-31 09:24:51 UTC ---
(In reply to comment #1)
> Is something logged in the error log?
> Make sure you have disabled MultiViews for the /webdav directory.

There was nothing in the error log when I received that 404 reply.

I have disabled MultiViews and it solved the problem!  Apparantly KeePass
changed the way it saves in version 2.09.

http://kerkhove.net/glob/1/2009-11-29/hello-world.html/comment-page-1

I read about MultiViews and it doesn't seem like it should break anything that
KeePass does.  It should only look for other files if the requested one does
not exist.

http://httpd.apache.org/docs/2.0/mod/mod_negotiation.html

It still seems like a bug, yes?

Thanks for your help!

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


DO NOT REPLY [Bug 48576] MOVE or COPY in WebDAV fails with 404 when file extension is changed

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48576

--- Comment #3 from Wim Lewis <wi...@omnigroup.com> 2011-05-02 18:50:14 UTC ---
I agree that this seems like a bug. The WebDAV WG decided not to try to figure
out the right interaction between DAV and content negotiation, so it's probably
best to just disable MultiViews on a DAV directory, but Apache's current
behavior seems unambiguously wrong.

The general case that causes this problem for me is MOVEing a collection to a
destination URL which is only mapped as a result of content-negotiation. For
example, if I have file Foo.txt and collection Bar, then moving Bar to Foo will
fail with 404.

IMHO Apache should do one of:

1: Fail with 412 if Overwrite: F was sent; succeed if Overwrite: T was sent.
2: Succeed whether or not Overwrite: T was sent (on the theory that you're not
overwriting anything)
3: Fail with another 4xx error code such as 409 Conflict.

I think #1 is probably most correct. #2 is probably closest to what most
clients want, but I don't think it is truly correct from a webdav point of
view: The Foo resource does actually exist, even though "overwriting" it does
not result in the loss of any data.

#3 would be a compromise to keep Apache's current behavior but return a more
accurate error code.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


DO NOT REPLY [Bug 48576] MOVE or COPY in WebDAV fails with 404 when file extension is changed

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48576

--- Comment #1 from Stefan Fritsch <sf...@sfritsch.de> 2010-01-29 15:13:57 UTC ---
Is something logged in the error log?

Make sure you have disabled MultiViews for the /webdav directory.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org