Authors of Web content require a means of managing that content and uploading it to the server. One of the protocols used for this purpose is DAV (Document Authoring and Versioning). DAV enables users and applications to publish and modify Web content. In this hour, you will learn
What publishing solutions are available
How to build and configure the DAV extension for Apache
How to configure DAV clients to work with Apache
The Need for a Publishing Protocol
In the early days of the Web, the Webmaster or system administrator traditionally edited the content of Web pages directly in the system hosting the Web site. The Webmaster logged in to the system remotely, via the telnet or rsh protocol, and used conventional text editors to edit the HTML code.
As the Web became more popular, several factors described in the following sections made this approach impractical in many situations.
Windows as a Web Server Platform
A number of Windows-based Web servers appeared, such as Microsoft Internet Information Server. Although not necessarily more robust or secure than their Unix counterparts, these Web servers were definitely easier to use and set up and quickly grew in popularity. However, Windows servers lacked extensive remote access capabilities, and content was copied by hand or by sharing folders in the same local area network.
Separation of Tasks
As Web sites grew in complexity and refinement, a series of new roles emerged. The Webmaster was in charge of administering the Web server, analyzing the logs for errors, updating the software, and so on. Web programmers dealt with providing dynamic features in the Web site, such as personalization, processing forms, and content searching. Designers and editors provided content and graphics for the Web site. This separation of tasks required access restriction policies and easy-to-use methods for updating the Web site content by nontechnical individuals. The tools for generating Web content evolved from simple text editors to sophisticated publishing tools, closer to word processors in features and ease of use.
These tools run on the desktop machine and need a way to upload their content to the Web server.
Eventually, third-party companies started providing Web-hosting services to corporate customers. Internet service providers and Internet portals provided personal home pages to their users. This increased even more the need for a secure, standard, easy-to-use mechanism for transferring and updating Web pages.
Earlier solutions to this problem were based on different protocols and were not entirely satisfactory. These solutions included:
FTP protocol: Files could be uploaded and deleted using the File Transfer Protocol (FTP) protocol. This was cumbersome for system administrators, who needed to maintain and configure a separate server and user database, and for users, who required an additional tool to upload their changes. The software providers started integrating FTP clients with their publishing products to make it easier for the end user.
File uploads via forms: Some hosting providers allowed clients to upload pages via a form interface. This allowed upload of only one file at a time, and thus was suitable only for simple Web sites such as home pages.
File mirroring software: Tools such as rsync and custom mirroring scripts can compare a local repository with a remote one and make the necessary changes to synchronize them. These are command-line tools commonly used by administrators and advanced developers.
HTTP PUT: This method was eventually introduced in the HTTP specification and allowed clients, such as Netscape Composer, to upload files directly to the server.
Proprietary protocols: This includes protocols such as those from the Microsoft FrontPage publishing tool. They required modifications to the server to support these protocols.
In summary, the existing solutions were difficult to use and administer, nonstandard, and usually required setting up a special, separate server. A new protocol based on HTTP was developed to address these shortcomings: Distributed Authoring and Versioning, also known as DAV or WebDAV. This hour covers the installation and configuration of the DAV protocol and mentions Microsoft FrontPage server extensions because of their popularity.