Mac – Webdav troubleshooting on Mac OS X

mactroubleshootingwebdavwebdavfs

Are there any tools/instructions/pointers about how to troubleshoot webdav problems on Mac OS X? Any secret mount options, undocumented webdav module logging, anything?

What I usually do is to reroute webdav traffic via Fiddler/Charles reverse-proxy. This way I can see requests and responses flowing between Mac OS X/WebdavFS and server. What I am missing is sone reasons why webdav behaves the way it does. E.g. why is file opened in read-only mode — was there anything bad in response which caused this? 🙁

Edit: I am not asking about specific mac/webdav issue, but about ways to debug webdav issues on Mac. To clarify: I am writing server-side part (i.e. webdav server itself). I often can see all requests/responses. But 1) Mac generates LOT OF REQUESTS, and 2) even when I see requests/responses, I sometimes observe problem and can't find the root cause (E.g., MS Word files are sometimes opened in Read-only mode, and I don't know why)

Best Answer

The OSX Finder requires Dav Level 2 support to mount a WebDAV volume read/write. Specifically working LOCK support is required.

I'd grab ngrep and check out the traffic. Look for Dav: 1,2. Also check out the response to the OPTIONS request that OS X asks when it connects.

The OS X Finder is the only application I know of that uses Chunked Encoding when sending a file via PUT. This is required behavior of any HTTP/1.1 server, very few implement it. Apache does, and I think Jackrabbit does, but few other web servers or reverse proxies do. Check your server logs and look for PUT requests with a 400 result.

Update in response to the note about Word read-only:

You should ensure that the MS-Author-Via: Dav header is present on your responses. This extension to the WebDAV spec is required for Microsoft Office applications to interact with WebDAV servers.

Related Topic