mod_dav
に関するインストールメモ(2002/02/16, 更新日:2003/03/28)
・Qube3Jにインストールされている apache-1.3.12 を使用する。
・apache-1.3.12 は、DSO でコンパイルされている。
・expat - XML Parser Toolkit Version 1.2 が必要である。
・mod_dav では、漢字が使えません〜(結局、使えるように設定できましたが)
mod_dav は Apache に WebDAV(Web Distributed Authoring and Versioning)機能 (RFC 2518) を追加するためのモジュールです。これは Apache スタイルのライセンスで提供される、オープンソースなモジュールです。とありますが、簡単に説明するとファイル送受信機能を持ち、しかもドキュメントの履歴管理(CVS)もできるネットディスクの事を指します。
どうして mod_dav(WebDav)が注目を浴びているかと言うと、セキュリティの関係上 ftp ポートを閉じている会社が多いが http ポートは開いている。その http ポートを使ってファイルの送受信をしたい! と言う要望のソフトウエア(フリー)です。
本家 : WebDAV Resources JP
参考 : WebDav HowTow [mod_dav のインストールと設定]
1.expat - XML Parser Toolkit Version 1.2 をダウンロードし解凍&コンパイルを行う。この作業を行わないで、これ以降の作業をした場合、httpd の再起動を行うと以下の Parser エラーが発生してしまいます。
エラー内容
Cannot load /etc/httpd/modules/libdav.so into server: /etc/httpd/modules/libdav.so: undefined symbol: XML_SetElementHandler
作業手順
# wget ftp://ftp.jclark.com/pub/xml/expat.zip
# unzip expat.zip
# cd expat
# make
# cd xmlparse
# cp libexpat.a /usr/local/lib
# cp xmlparse.h /usr/local/include/2.mod_dav 公式サイト(http://www.webdav.org/mod_dav)から、リリース版「mod_dav-1.0.3-1.3.6」をダウンロードし解凍&コンパイルを行う。
# wget http://www.webdav.org/mod_dav/mod_dav-1.0.3-1.3.6.tar.gz
# gzip -dc mod_dav-1.0.3-1.3.6.tar.gz | tar xf -
# cd mod_dav-1.0.3-1.3.6
# env CC=cc ./configure --with-expat=/usr/local
# make
# make install※ 'make install' 作業を行う前には、必ず /etc/httpd/conf/httpd.conf ファイルのバックアップを行うこと。
3.httpd.conf に mod_dav 定義を記述します。
# cd /etc/httpd/conf
# vi httpd.conf
LoadModule dav_module modules/libdav.so
LoadModule headers_module modules/mod_headers.so
AddModule mod_dav.c4.DAVlock ファイル/DAV データディレクトリを作成します。任意の場所で構いませんが、 セキュリティの関係上 DAV データディレクトリの配下に DAVlock ファイルを置くことは好ましくありませんにで、考慮が必要です。
# cd /home
# mkdir -p www/lock ← DAVlockディレクトリ
# mkdir -p www/data ← DAVデータディレクトリ
# chown chown -R httpd:httpd wwww5.srm.conf に mod_dav の定義を記述します。認証をかけず公開する方法としていますが、セキュリティ上好ましくないので実際には、Basic/MD5認証を行うのがベストです。
DAVLockDB /home/www/lock/DAVLock
DAVMinTimeout 600
Alias /DAV /home/www/data
<Location /DAV> ← "www.sea-bird.org/DAV/" として公開します
DAV On
</Location>6.srm.conf に下記の定義を記述しないと、Windowsのネットワークプレースからアクセスした場合、http のレスポンスヘッダに FontPage Server Extension が入ってるとみなして /_vti_inf.html や /_vti_bin/shtml.exe/_vti_rpc の _vti* を見にいってしまいます。このままでは正常にアクセスすることができませんので、HTTP のレスポンスヘッダに上記のヘッダが存在した場合、DAV として変換する記述をしてあげます。
<Location />
Header add MS-Author-Via "DAV"
</Location>7.ここまできたら apache を再起動してみましょう。
# /etc/rc.d/init.d/httpd restart
8.実際にwindows2000から参照してみましょう。エキスプローラーのネットワークコンピュータを選択し、ネットワークプレースの追加で 「http://www.sea-bird.org/DAV/」と入力して先に進みましょう。うまくいけば /DAV/ が見えます。
詳しい設定方法は、しんたのページ[Apache に WabDAV を組み込む] か hotchpotch[Apache for WindowsでWebDAV]さんのページを参照し、Webフォルダーを利用しよう!もいいぞ。まっがんばってください♪ しかし両者のHPすごい・・・。おらも勉強しなくっちゃ。