fc2ブログ
vsLinux は Linux の新しいデストリビューションです。 うそです。

ここは私の linux やネットワーク周りに関する知識の備忘録です。
WebDAV
windows 2003 server + Apache2 上でWebDAV が出来るまで。
WebDAV は http プロトコル使ってファイル管理出来る技術らしい。
windows + WebDAV の流れの説明はここに非常に詳しい説明があります。かなり参考にさせていただきました。

まず全ての準備として Apache のインストール。


Apache2
apache_2.0.53-win32-x86-no_ssl.exe

これ実行で OK。
インストールが終わるとスタートアップに登録されて

apache_stop.jpg

apache_run.jpg

こんなアイコンがタスクトレイに入って、上ならサーバ停止、下ならサーバ稼動中。とかそんな。簡単すぎて物足りない。

Apache の 設定は httpd.conf で全部出来ます。WebDAV のモジュールは最初から入ってるので、httpd.conf 開いて LoadModule 文の固まってるところに

LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so

さらに下のほうへ WebDAV の共有フォルダとなるフォルダを設定する文を追加して下さい…

# config for WebDAV
<IfModule mod_dav.c>
Alias /resource "c:/resource/www/resource"
  DavLockDB "c:/resource/www/davlock/DavLock"
  DAVMinTimeout 600
  <Location /resource>
    DAV On
  </Location>
</IfModule>

(インデントに全角空白を使っているのでコピペで流用しないで下さい)
Alias で c:/resource/www/resource という WebDAV 用のフォルダを /resource として定義しているので、この場合


http://your.domain.jp/resource/

で WebDAV フォルダへアクセス出来るようになりました。
/resourceと明記するのが大事。このスラッシュ忘れてうまくいかなくて死にそうになった。
あと DavLockDB というのは適当にフォルダ作っておけばよし。投げやりですいません。今回ユーザ認証の設定は飛ばしてます。

さあ、これで後は Apache を restart するだけで OK!
WebDAV が入っちゃいました。次は使ってみまっしょ。

実は Windows2k や XP には OS 標準で WebDAV フォルダを手軽にアクセス出来る機能が実装されています。すげー。
「マイネットワーク」から「ネットワークプレースを追加する」を選べば OK( 2k なら「ネットワークプレースの追加」)。

webDAV_on_windows-1s.jpg

webDAV_on_windows-2s.jpg

なんか恥ずかしながら自分間違えたので…
「ネットワーク接続」の「新しい接続を作成する」ではありません(;;

で、さっきの


http://your.domain.jp/resource/

をネットワークプレースとして指定してあげれば、図(上)のような感じで「インターネット」という項目と共に WebDAV フォルダが出現します。

これでファイルの出し入れがフォルダ感覚、かつブラウザから http プロトコル使ってフォルダにアクセスできるという話です。すごいよねー


日本語化について

このままだとあれだ。日本語ファイルが使えない。
Apache に mod_encoding というモジュール入れねばなりません。
windows 用のモジュールは用意されてないので自分でビルドしなきゃならないんですが、ネット上で配っていらっしゃる方がいましたのでありがたく使わせていただきます。さっきもリンク張ったこのサイトです。すばらしいです。ページの下のほうにあります。
自分の Apache のバージョンと合ったものをダウンロード。私の場合


mod_encoding.so.2.0.53.zip

を拝借してきました。
これを Apache のモジュール置くフォルダ(大方 %Apache folder% /modules )に入れて、httpd.conf を編集します。

LoadModule encoding_module modules/mod_encoding.so

# japanese_encoding with webDAV
<IfModule mod_encoding.c>
  EncodingEngine On
  SetServerEncoding UTF-8
  DefaultClientEncoding JA-AUTO-SJIS-MS
  AddClientEncoding "cadaver/" EUC-JP
</IfModule>

(インデントに全角空白を使っているのでコピペで流用しないで下さい)
これで OK。

最後に参考にしたサイト列挙します。すばらしいサイトばかり。
http://elug.gogo.homelinux.org/pukiwiki.php?WebDAV
http://www.ex.media.osaka-cu.ac.jp/webdav-m/

なんかだらだら書いてしまったけど
本当に大変なのはここからでしたっ
スポンサーサイト