続いては、mod_davでWebDAVを構築する。
別にMacBook上にWebDAVを構築する意味などないのだが、今までWebDAVの設定はしたことがなかったので、試してみた。
ロックファイル用ディレクトリの作成
WebDAVのロックファイルはrootではなくApacheを動作させるユーザの権限(LeopardのApacheの場合 www)で作られるらしい。なので、ロックファイルを置くディレクトリをあらかじめ作成し、持ち主を www にしておく。
# mkdir /etc/apache2/dav # chown www:staff /etc/apache2/dav
WebDAV用のディレクトリの作成
# mkdir /Library/WebServer/share/dav # chown www:staff /Library/WebServer/share/dav
どこに置くか迷ったけど、DocumentRoot近辺にしておいた。
パスワードファイルの設定
デフォルトのApacheの設定ではDigest認証を使うようになっていたので、Digest認証用のパスワードファイルを作成する。
# htdigest -c /etc/apache2/passwd.digest DAV koba
DAVはレルムの名前、kobaがユーザ名。
httpd.conf の設定
以下の行は多分最初から有効になっている。
LoadModule dav_module libexec/apache2/mod_dav.so ... LoadModule dav_fs_module libexec/apache2/mod_dav_fs.so
以下の行を有効にする。
# Distributed authoring and versioning (WebDAV) Include /private/etc/apache2/extra/httpd-dav.conf
extra/httpd-dav.conf の設定
元のファイルにはいろいろ設定があったけど、簡潔に以下だけにした。
DavLockDB "/etc/apache2/dav/DavLock"
Alias /dav "/Library/WebServer/share/dav"
<Location "/dav">
Dav On
SSLRequireSSL
Order Allow,Deny
Allow from all
AuthType Digest
AuthName DAV
AuthUserFile "/etc/apache2/passwd.digest"
AuthDigestProvider file
<LimitExcept GET OPTIONS>
require user koba
</LimitExcept>
</Location>SSLRequireSSL を指定すると、httpsでのアクセスしか許さないようになる。