Difference between revisions of "WebDAV"
(→Windows 7 Notes)
(→Windows 7 Notes)
|Line 102:||Line 102:|
from 1 (default) to 2 unless you're using commercial Certificates
from 1 (default) to 2 unless you're using commercial Certificates mixed mode enabled to access the ZWC via https://
Revision as of 17:22, 8 March 2010
Web-based Distributed Authoring and Versioning is an extension to HTTP allowing users to remotely manage and edit files on WWW servers. These files could be shared by these users and/or they can work upon them collaboratively.
The main feature is that you can create, change and move documents on a remote server which is generally a web server or a so called "web share". You can mainly use it for authoring (as the name suggests) the documents on the web share but also for sharing large files that can be accessed from anywhere making it an online storage unit so to speak.
Other features of WebDAV protocol are:
- locking (overwrite prevention),
- properties (creation, removal, and querying of information about author, modified date, etc.),
- name space management (ability to copy and move Web pages within a server's namespace) and
- collections (creation, removal, and listing of resources).
WebDAV is supported built-in by major Operating systems.
RFC standard number is 2518: http://www.ietf.org/rfc/rfc2518.txt
Mounting/Opening a remote folder on a local machine
You can mount a remote share on the local machine and work on it as if it is a local folder.
This is dependent on what update level you are on windows. Please refer to the following article for more information:
IE supports this feature since Win98. Go to File menu -> click on Open -> check the box "Open as Web Folder" and provide the URL. E.g. (for Zimbra Briefcase) http://<servername>/dav/<username(without domain)>/Briefcase
If the above doesn't work there is a workaround for it in which case you have use the following link:
Another way to implement this is to "Map it as a network Drive/Location" aka Windows Explorer mount:
- Goto the "Add Network Location Wizard" from the control panel (there are multiple ways of accessing this and also varies based on version of MS windows).
- Select "Choose a custom network location" and then press Next.
- Enter the URL: http://<servername>/dav/<username(without domain)>/Briefcase and then click Next.
- You will be prompted for a username/password. Enter your credentials.
- Then type in a Name for the Network location and you are done. You can access the Briefcase from this location.
Win2K, WinXP, Win2K3 Notes
For implementation of WebDAV on Windows XP and later , MSFT made it's own interpretation of the standard to work best with the Windows IIS servers. The problem due to this is three fold:
- Windows XP authenticates users using the format "domain\username" by the mechanism of "Microsoft-WebDAV-MiniRedir/5.1.2600". Whereas Windows 98SE/2000 authenticates users as "username" using the mechanism of "Microsoft Data Access Internet Publishing Provider DAV 1.1".
- The problem lies with the implementation of "Microsoft-WebDAV-MiniRedir/5.1.2600". If authentication is sent as "domain\username" then it would be received as "usernamedomain" or "usernamehostname" by the Web server and not as "username".
- Also as per "Microsoft Knowledge Base, Article ID: 841215" Windows XP disables "Basic Auth" in its "Microsoft-WebDAV-MiniRedir/5.1.2600" mechanism by default for security reasons. But WebDAV expects "Basic Auth".
The standard way to connect to a WebDAV folder looks something like "http(s)://<servername>/dav/<username>". However, a due to a bug in Win XP, this would be interpreted as a M$ network drive/SMB server.
So the solution is to trick Windows XP:
- Force Windows XP to use the stable "Microsoft Data Access Internet Publishing Provider DAV 1.1" mechanism instead of "Microsoft-WebDAV-MiniRedir/5.1.2600".
- Make Windows XP internally only send username and password and not the domain. [This can be done using the old Windows 2000 WebDAV driver that is present in all Windows XP machines.]
- Force Windows XP to authenticate using "Basic Auth".
- Prevent XP to interpret "http(s)://<servername>/dav/<username>" as a M$ network drive/SMB server.
Procedure for XP
1. Find the file called "webfldrs.msi", normally under "\WINDOWS\SYSTEM32\". Incase Windows XP Service Packs are installed then the same can be found under "\WINDOWS\ServicePackFiles\i386\". 1a. Run "webfldrs.msi". 1b. Click on "Select reinstall mode". 1c. Uncheck "Repair all detected reinstall problems". 1d. Check "Force all files to be reinstalled, regardless of checksum or version". 1e. Check "Verify that required user registry entries are present". 1f. Check "Verify that required machine registry entries are present". 1g. Check "Validate shortcuts". 1h. Press OK and REINSTALL
2. Modify the Windows registry "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters" and add a new value "UseBasicAuth". 2a. Choose "Run" in the start menu and type: "regedit" 2b. In the registry-editor go to "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters" 2c. Right click into the right field and choose "New" from the context-menu. Choose "DWord-Value". 2d. Name the new value "UseBasicAuth". 2e. Right click on "UseBasicAuth" and choose "Modify". 2f. Change the value "0" (disabled) to "1" (enabled) and click "OK"
Then open in IE or mount it as a network location as discussed in the basic directions above.
If the above doesn't work, I have tried several 3rd party client that helps you to connect to webdav service under windows. And non of them comes close to "netdrive", a freeware from Novell. Once netdrive is connected to your zimbra, you can map it to a local drive letter just like the native windows webdav driver but better. Here is a link: 
Only the WebDAV redirector is present in Windows Vista. The original "Web folders" client has been removed. The "Web folders" client is only present if the Microsoft Update for Web Folders is installed. http://www.microsoft.com/downloads/details.aspx?FamilyId=17C36612-632E-4C04-9382-987622ED1D64&displaylang=en
Please note that during testing this did not work on all our test systems, the reason for that is how webDAV is implemented on your site. (There are currently additional bugs for working around Windows Vista SP1 & Windows Server 2008 RC1 differences.)
Windows 7 Notes
Check if the WebClient Service is running and set to "Start Automatically". From a command prompt you can start WebClient Services by typing
net start webclient
You need to run cmd.exe with elevated privileges if you have UAC enabled.
Set the registry key
from 1 (default) to 2 unless you're using commercial Certificates and mixed mode enabled to access the ZWC via https://
The Windows 7 URL Schema has changed. Use
for http:// access or
for https:// if you have mixed mode enabled.
Slow Connection / IE8 Installed
- Close IE8 - Uncheck "Automatically Detect Settings" in IE8 Connection Preferences
Nautilus This is the easiest way of opening up a WebDAV folder in an Explorer/MAC kind of a view. All you have to do is goto and then provide the below link and press enter.
http://<servername>/dav/<username(no need for specifying domain>/Briefcase
The Briefcase will open up in a new window.
If you encounter I/O Errors while trying to write files to the share, edit your /etc/davfs2/davfs2.conf and add
and eventually adjust the dav_group option to be davfs2.
Another great utility is Cadaver, its a simple CLI based tool (that works similar to ftp) for WebDAV. You need install the cadaver package or RPM for this. Then goto the command line and type this:
- cadaver http://<servername>/dav/<username(no need for specifying domain>/Briefcase
- It will prompt you for username and password and after successful login it will then give you the dav prompt
- help command will give you all the commands available at your disposal.
Mount as local folder
This could be one of the most popular way of using WebDAV wherein you can mount the remote folder on a local folder just like any other NFS share. This involves installing a few of the following rpms that provide the functionality for supporting "davfs2" filesystem type. Once these are installed and all dependencies resolved, you can use the following command to mount your briefcase and work as if it is a local folder:
mount -t davfs http://<servername>/dav/<username(no need for specifying domain)>/Briefcase /<path to mount>
RPMS to install (kindly ensure the RPM architectures - whether its 32bit or 64bit for your system:
davfs2-1.2.2-4.el5.rf.i386.rpm lwp-1.11-1.i386.rpm lwp-devel-1.11-1.i386.rpm rvm-1.9-1.i386.rpm rvm-devel-1.9-1.i386.rpm rvm-tools-1.9-1.i386.rpm ncurses-5.5-24.20060715.i386.rpm ncurses-devel-5.5-24.20060715.i386.rpm rpc2-1.21-1.i386.rpm rpc2-devel-1.21-1.i386.rpm neon-0.25.5-5.1.i386.rpm neon-devel-0.25.5-5.1.i386.rpm
Then "fuse" or "coda" kernel modules or both, you can obtain the latest packages from sourceforge. I have tested this on the following:
fuse-2.7.3.tgz coda-server-6.0.5-1.i386.rpm coda-client-6.0.5-1.i386.rpm coda-backup-6.0.5-1.i386.rpm
This didn't work on a few of the test systems running RHEL4 U4 & U5 and RHEL5. I am getting down to the cause for this and will update this page as soon as I have any updates.
To be able to use this on Ubuntu, you have to install the package davfs2. This can easily been done with the command:
apt-get install davfs2
However, you are now able to mount it, but you will not be able to write to the Briefcase. See this guide for now on how to solve this.
Mount in Finder:
http(s)://SERVER/dav/USER You can also access the webdav mount over the CLI. See 'man mount_webdav' for details. Just mount it and use it like any other mounted volume.
Notes: If trying to mount against a box with more than one domain it often helps include @domain It's %40 is the encoded form of the @ sign: