FreeBSD

Apache 2.2

  1. インストール
  2. WebDAV

1. インストール

ports/www/apache22/ で何も考えずに make install しました。ディレクトリのファイルの一覧を表示しないようするため /usr/local/etc/apache22/httpd.conf に若干の変更を加えました。
Options Indexes FollowSymLinks
Options -Indexes FollowSymLinks
他、ServerAdmin などを適切に(適当に?)設定し、/etc/rc.conf
apache22_enable="YES"

を追記してリブートすれば /usr/local/sbin/httpd が起動すると思います。
Apache 2.0 とは違い DocumentRoot が /usr/local/www/apache22/data になっています。

2. WebDAV

Apache 2.2 は標準で WebDAV 機能が含まれていますので((2.0 以降?))、簡単に実現できました。
ますは /usr/local/etc/apache22/httpd.conf
DavLockDB /var/tmp/apache/DavLock
Alias /dav "/home/dav/"
<Directory /home/dav>
        AllowOverride FileInfo AuthConfig Limit Indexes
        Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
        <Limit GET POST OPTIONS PROPFIND>
                Order allow,deny
                Allow from all
        </Limit>
</Directory>
<Location /dav>
        DAV On
        Options FollowSymLinks Indexes
        AuthType Basic
        AuthName "WebDAV"
        AuthUserFile /usr/local/etc/apache22/webdav.passwd
        <Limit GET PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
                require valid-user
        </Limit>
</Location>
を追記しました。
続いて公開用のディレクトリとロックファイル用のディレクトリを用意します。

# mkdir /home/dav
# chown www:www /home/dav
# mkdir /var/tmp/apache
# chown www:www /var/tmp/apache

それぞれのディレクトリは Apache ユーザの書き込み権限が必要です。FreeBSD ですので www:www を指定しています。
最後にパスワードファイルを用意しました。

# htpasswd -c /usr/local/etc/apache22/webdav.passwd username
New password:(パスワードを入力します)
Re-type new password:(再度入力します)
Adding password for user username

これで準備完了です。Apache を再起動すればブラウザからも
http://URL/dav/
でアクセスすることができます。