Sambar Server Documentation

WebDAV
Pro Server Only


Overview
Web-based Distributed Authoring and Versioning (RFC 2518) defines the HTTP extensions necessary to enable distributed web authoring. WebDAV provides a network protocol for creating interoperable, collaborative applications, making the Web a collaborative, writable medium. The basic purpose of WebDAV is to provide file I/O through HTTP. This permits you to load, edit, delete, create subdirectories, and basically manage files located on the Web Server from the client desktop.

Important! WebDAV compliance is an ongoing development effort. In particular, the specification is not yet complete for versioning (DeltaV); development in both search and versioning is ongoing. Enabling WebDAV, exposes the Versioning system Currently implemented DeltaV methods are: VERSION-CONTROL, CHECKOUT, CHECKIN, UNCHECKOUT. (Note: DeltaV interfaces tested using cadaver client.) via the Document Manager, and allows users other than the system administrator to use the functionality of the Document Manager.

Support for WebDAV continues to improve. Authors can use WebDAV tools such as IE, FrontPage, Dreamweaver Photoshop and GoLive. In addition, WebDAV is supported in the operating system and desktop environment for Windows (Web Folders) and Mac OS X (mount), and Gnome (GnomeVFS and Nautilus).

How does WebDAV work?
Each server user (with read-write permissions) can mount a WebDAV volume located on a shared server to his/her desktop. As long as the server supports WebDAV, users can mount the WebDAV volumes to their desktop regardless of the web server's operating system. Users can then access the files as if they were on any other networked volume.

Today, when people want to collaborate on a document, they usually pass it back and forth using email. This can be a slow, messy, error-prone process; over time passing files back and forth leads to difficulty tracking versions. WebDAV-enables applications allow collaborating teams to remotely develop, edit and manage content, regardless of each user's location.

Major Features

  • Locking (concurrency control): long-duration exclusive write locks prevent overwrite problems, where two or more collaborators write to the same resource without first merging changes. To achieve robust Internet-scale collaboration, where network connections may be disconnected arbitrarily, and for scalability, since each open connection consumes server resources, the duration of DAV locks is independent of any individual network connection.
  • Properties: XML properties provide storage for arbitrary metadata, such as a list of authors on Web resources. These properties can be set, deleted, and retrieved using the DAV protocol. DASL, the DAV Searching and Locating protocol, provides searches based on property values to locate Web resources.
  • Namespace manipulation: Since resources may need to be copied or moved as a Web site evolves, DAV supports copy and move operations. Collections, similar to file system directories, may be created and listed.

The Sambar Server Pro includes a Class 1 and Class 2 DAV server (see webdav.org) following RFC 2518. In addition, versioning support has been implemented in the server; there as yet has been no attempt to follow or conform to any specifications of the WebDAV Versioning working group (DeltaV). As the WebDAV Versioning project nears completion, the Sambar Server will be brought into compliance with the specification. Important! Existing versioning functionality (i.e. metadata) may change if required for WebDav Versioning compliance; backwards compliance will be maintained if possible.

The terrific work of Greg Stein on the mod_dav Apache project served as a reference implementation for the work in the Sambar Server.

This product includes software developed by Greg Stein <gstein@lyra.org> for use in the mod_dav module for Apache (http://www.webdav.org/mod_dav/).

Primary testing of the Sambar Server WebDAV implementation was performed using the DavExplorer client application developed at the University of California, Irvine.

Security
DAV allows users to place and manipulate files in a directory on your web server. To ensure security of user files, a Sambar Server user login is required to access a DAV repository (there is presently no anonymous access allowed). Furthermore, user read-only passwd settings and all .htaccess and security.ini security constraints are enforced on DAV resources.

WebFolders
The idea of WebFolders is to make a folder available over a network no matter which computer you are currently working on. These folders behave just like usual folders (irrespective network limitations). Sambar Server WebDAV support allows you to store documents into your server from any computer that is WebFolder enabled and has a network connection (normally over the internet). Presently Microsoft Windows 2000 & XP, Microsoft Office 2000 and Microsoft Internet Explorer 5.X support the WebFolder mechanism. With the IE 5.X it is possible to enable any Windows machine (except Windows 3.X ) for free. In IE 5.X and later, you can Open... a web page and select the checkbox Open as WebFolder to get Windows Explorer-like access via IE.

Important! WebDAV support in IE 5.X is fairly buggy. Session support requires enabling the Share User Logins flag because IE 5.X doesn't send cookies when using "Open as WebFolder". But you can drag and drop files into the open folder. IE 6.X is expected to fix many of these limitations.

XP WebDAV Redirector
Windows 2000 is WebDAV enabled as a client if you publish to a Web Folder from the Desktop, Office Application, or Internet Explorer. You can't, however, use NotePad or Wordpad as those programs are not WebDAV enabled. In other words, in Windows 95/98/2000 the client software has the responsibility of being WebDAV enabled.

In Windows XP, everything in the OS can publish to a WebDAV enabled web server. This is because XP contains a WebDAV network redirector thereby enabling non-WebDAV client software to open and save files to the Web server over HTTP. In XP, you can map a drive to a web server so that when you save a file to drive X:, for example, it is published directly to a web server. You can also select file, open and type http://servername/folder as a pathname just as you can a drive letter or UNC pathname.

Source vs. Rendered
Most websites have URLs that produce dynamically rendered HTML pages using template technologies such as JSP, PHP, SHTML, STM etc. When you retrieve a page on a website, you are getting the rendered version. However, if you want to edit your page, you need the "source" version, not the "rendered" version.

The WebDAV specification anticipated this and defined a notion of "SOURCE" content. Regretably, virtually no WebDAV clients support this method call (it's quite cumbersome to implement on a server that maintains a one-to-one mapping between URIs and items in the store) and more importantly Microsoft has provided an alternative (non-standard) header that performs the same function. The Sambar Server WebDAV implementation supports only the Translate: f header to remain compatible with Microsoft clients.

Translate: f
As defined by Microsoft, the Translate header indicates if the web server should perform any "translation" on the file (generally in the form of an interpreter acting on it). An argument of f is used to indicate that no translation is to be performed; otherwise transation is assumed enabled. For instance, a GET with "Translate: f" on a .jsp file will return the source of the file (assuming you have permission to access the source; see htaccess for documentation on limiting user's access to WEBDAV content. If WebDAV is enabled, all authenticated users have access to source for files under their "Root Directory" (specified in the user management configuration).

Compatiblity Issues...
Cookies
Some WebDAV clients do not pass cookies back to the server. Since cookies are used to maintain a user login, the clients end up reauthenticating and logging in on each request until the Maximum Simultaneous Logins is reached. To avoid this problem, the Share User Logins can be enabled which will associate the subsequent logins from the WebDAV clients with the same server-side USER structure (unique to the username/IP).

Digest Authentication and Windows XP
Windows XP SP2 disables Basic authentication in the WebDAV Redirector. As a result, if you are using SQL, LDAP or Radius authentication (where Digest support is not available) you will have to modify your Windows Registry to re-enable Basic Authentication. To do this, add the UseBasicAuth registry entry to the following registry subkey, and then set the entry to a non-zero value:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters

Futures
The DAV specification does not provide document management capabilities or workflow. DAV is an underlying protocol. The Document Manager provided by the Sambar Server will continue to be enhanced to expose more of the WebDAV functionality as it is implemented. In addition, workflow and triggers will likely be implemented in the underlying versioning system provided with the Sambar Server.

© 2000-2001 Sambar Technologies. All rights reserved. Terms of Use.