Simple WebDav Setup
From ArchWiki
--cactus 18:45, 23 Jul 2005 (EDT)
Contents |
Goals
The goal of this how to is to setup webdav with apache. Simple configuration only.
Required packages
- apache
- cadaver (for testing)
Apache Installation
This how to does not cover installation and initial setup of apache.
WebDav Configuration
Step 1: Edit /etc/httpd/conf/httpd.conf
Add the following line:
DAVLockDB /home/httpd/DAV/DAVLock
Make sure you add it outside of any other directives, at the \"top level\" of the config file heirarchy.
- note: I put it right under the DocumentRoot definition.
Next, add the following:
<Directory "/home/httpd/html/dav"> DAV On AllowOverride None Options Indexes FollowSymLinks </Directory>
- note: This should also be put in the top level heiracrchy. I put it right before the "UserDir public_html" section, and after the most previous "</Directory>".
Step 2: Create needed directories and assign permissions
(root@box httpd)# mkdir -p /home/httpd/DAV (root@box httpd)# chown -R nobody.nobody /home/httpd/DAV (root@box httpd)# mkdir -p /home/httpd/html/dav (root@box httpd)# chown -R nobody.nobody /home/httpd/html/dav
Step 3: Restart apache
(root@box httpd)# /etc/rc.d/httpd restart
Test
Step 1: Install cadaver
Cadaver is a command line webdav client. It is good for testing. If it is not in a repository, you can download the file manually from my repository and install it, or you can add my repository to your repo list in pacman.conf. For more information about those options check CacTus. Ok. Now back to it..
(root@box httpd)# pacman -S cadaver
Step 2: Try to connect
Note: ipaddress can also be a hostname
(root@box httpd)# cadaver http://ipaddress/dav dav:/dav/> mkcol test Creating `test': succeeded. dav:/dav/> ls Listing collection `/dav/': succeeded. Coll: test 0 Feb 22 20:31 dav:/dav/> exit
That's it. If the above worked as shown, then you are good to go.
Make sure you add permissions for viewing and dav access to the directory, and maybe even make that directory ssl access only.
Thos are beyond the scope of this howto, as it is a simple one. Maybe more info will be forthcoming. Feel free to make your own howto about how to do that. :P