ページ更新: 2005-12-13 (火) (5522日前)
(2001.07.27 作成) Apache に mod-dav モジュールを入れて使ってみるテスト。(DAV …… Distributed Authoring and Versioning) とはいえ、別に必要じゃないので、discypus.jp サーバのApacheでは使わない。自分の手元のサーバで使ってみるつもり。消費メモリも増えるしね。(以前使わないモジュールしこたま入れて不安定になったし) 環境は Debian GNU/Linux Woody kernel 2.2.19、Apache 1.3.19 です。 目次 [編集]情報源 #[編集]rfc #RFC 2518 - HTTP Extensionss for Distributed Authoring - WEBDAV
@IT #実用 Apache 2.0運用・管理術 第6回 Apacheで作るファイルサーバ(WebDAV over SSL編)2005/12/13 (2005-12-13) http://www.atmarkit.co.jp/flinux/rensai/apache2_06/apache06a.html [編集]その他 #WebDAV Resources JP 手順 #パッケージを検索し、入手 # apt-cache search dav | grep -i dav(WebDAV関連パッケージを検索) jedstate - Extended mind for John E. Davis' text editor jed libapache-mod-dav - A DAV module for Apache (←コレ) libneon-0.15.0 - An HTTP and WebDAV client library cadaver - command-line client for WebDAV server (←コレも) # auto-apt search apxs (apxsコマンドが入っているパッケージを検索) usr/bin/apxs web/apache-dev # apt-get install libapache-mod-dav (mod_davモジュール) # apt-get install cadaver (テスト用に WebDAVクライアントを入手) # apt-get install apache-dev (apache-dev を入手) http://www.lyra.org/pipermail/dav-dev/2001-May/002392.html より mod_encoding.c を入手して、コンパイル。 $ apxs -c mod_encoding.c (コンパイル) gcc -DLINUX=22 -DEAPI -DTARGET="apache" -I/usr/include/db1 -DUSE_HSREGEX -DUSE_EXPAT -I../lib/expat-lite -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fpic -DSHARED_MODULE -I/usr/include/apache-1.3 -c mod_encoding.c mod_encoding.c:336: warning: initialization from incompatible pointer type gcc -shared -o mod_encoding.so mod_encoding.o -lc -lm -lcrypt -ldb1 -ldb # apxs -i mod_encoding.so (インストール) cp mod_encoding.so /usr/lib/apache/1.3/mod_encoding.so chmod 755 /usr/lib/apache/1.3/mod_encoding.so WebDAV用にパスワードファイルを作成する。 $ htpasswd -c .davpasswd example (パスワードファイル作成) New password: Re-type new password: Adding password for user example httpd.conf 追加 LoadModule dav_module /usr/lib/apache/1.3/libdav.so LoadModule encoding_module /usr/lib/apache/1.3/mod_encoding.so DAVLockDB /var/lock/DAV/DAVLock <Direcotory /var/www/dav> <LimitExcept GET HEAD OPTIONS> AuthType Basic AuthName "WebDAV" AuthUserFile /home/www/.davpasswd Require valid-user </LimitExcept> </Directory> <IfModule mod_encoding.c> EncodingEngine on SetServerEncoding UTF-8 AddClientEncoding SJIS "Microsoft .* DAV" AddClientEncoding SJIS "xdwin9x/" AddClientEncoding EUC-JP "cadaver/" </IfModule> apacheの再起動 # apachectl configtest Syntax OK # /etc/init.d/apache reload Reloading apache configuration. /usr/sbin/apachectl graceful: httpd gracefully restarted # tail /var/log/apache/errors.log (ここでエラーがあるかどうか確認) 接続テスト $ cadaver http://localhost/dav/ Looking up hostname... Connecting to server... connected. Authentication required for WebDAV on server `localhost': Username: example Password: dav:/dav/> ls Listing collection `/dav/': collection is empty. dav:/dav/> bye Connection to `localhost' closed. さらに、Windows2000 のWebフォルダでも動作を確認。 「マイ ネットワーク」→「ネットワーク プレースの追加」→URLを入力→ユーザー名とパスワードを入力 [編集]問題点 #
|