webdav(mod_dav)の導入
2002/01/28
文責:まいパパ(munetika@niji-net.com)
webdavには幾つかの実装がありますが、現在、日本語ファイル名が
使えるのは、mod_encordingを追加したmod_davだけだと思います。
導入方法をまとめてみました。
[参考文献]みやもとさんの@ITの記事
http://www.atmarkit.co.jp/flinux/special/webdav/webdav02a.html
環境:
Vine Linux 2.1.5
Aapche 1.3.20
mod_dav-1.0.3-1.3.6
[導入方法]
1.Apacheをmodule対応にして導入
$ ./configure --enable-module=most --enable-shared=max
$ make
$ su root
# make install
2.mod_davを導入
http://www.webdav.org/mod_dav/あたりから入手
$ ./configure --with-apxs=/usr/local/apache/bin/apxs
$ make
$ su root
# make install
3.mod_encodingを導入
http://www.lyra.org/pipermail/dav-dev/2001-May/002428.htmlから入手
$ apxs -c mod_encoding.c
$ su root
# apxs -i mod_encoding.so
4.環境設定
webdavのワークディレクトリとして/workを作成する。
# /workは適当なディレクトリに読み替えてもらってかまわない
/workにはApacheがnobody権限で書き込むので、適当な権限を
与える。
5.httpd.confの編集
以下の行がある(有効になっている)ことを確認
LoadModule dav_module libexec/libdav.so
AddModule mod_dav.c
以下の行をエディタで追加する
DAVLockDB /work/DAVLock
Alias /webdav /work/dav
DAV On
LoadModule encoding_module libexec/mod_encoding.so
AddModule mod_encoding.c
EncodingEngine on
SetServerEncoding UTF-8
AddClientEncoding SJIS "Microsoft .* DAV"
AddClientEncoding SJIS "xdwin9x/"
AddClientEncoding EUC-JP "cadaver/"
6.Apacheを起動する
7.クライアントで確認
http://www.atmarkit.co.jp/flinux/special/webdav/webdav02b.html
を参考にしてクライアントで確認する。
ところで私の環境からはWindows98でしかうまく動作しませんでした。
もう少し調べて設定をお知らせします。
8.認証について
上記で設定した環境では、誰でも読み込み/書き込み可能なので
Basic認証を行い、適当な権限を付与する。
1)パスワードファイルを作成する
htpasswdコマンドを使ってパスワードファイルを作成する。
便宜上ユーザー名を"uzuuzu"とし、作成するパスワードファイル
を"/usr/local/apache/sec/passwd"とする。
# /usr/local/apache/bin/htpasswd -c /usr/local/apache/sec/passwd uzuuzu
New password:####### <-ここでパスワードを入れる何も表示されない
Re-type new password:###### <-ここでもう一度パスワードを入れる
Adding password for user uzuuzu
2)httpd.confを編集し、 ....の
個所を追加する
# WebDAV Configuration
DAVLockDB /work/DAVLock
Alias /webdav /work/dav
DAV On
# ---- ここから追加 ----
# Security
AuthType Basic
AuthName "WebDAV Directory"
AuthUserFile /usr/local/apache/sec/passwd
Require valid-user
# ---- ここまで追加 ----
LoadModule encoding_module libexec/mod_encoding.so
AddModule mod_encoding.c
EncodingEngine on
SetServerEncoding UTF-8
AddClientEncoding SJIS "Microsoft .* DAV"
AddClientEncoding SJIS "xdwin9x/"
AddClientEncoding EUC-JP "cadaver/"
Aapcheを再起動し、クライアントから確認するとBasic認証を
行いますので、先ほど登録したID/パスワードでログインしてく
ださい。