WebDAVを利用するためには、クライアントもそれに対応したものが必要になる。クライアントとして最も利用されるであろうWindows、そしてUNIX(Linux)それぞれについて、順番に見ていこう。
ここでは、一番お手軽と思われるWindows 9xやWindows 2000のWebフォルダ機能を用いることにしよう。cadaverなど、UNIX環境で利用できるクライアントについては後述する。
ここで取り上げる設定は、Windows 2000 Professionalのものだが、Windows 98などでも似たような手順で設定できる。
[ネットワークプレースの追加]をクリックして、[ネットワークプレースの追加ウィザード]を起動(画面1)。
「ネットワークプレースの場所を入力してください」にURLを入力する(画面2)。
WebDAVでの接続が可能であればこの画面になる。必要であればネットワークプレース名を変更し、[完了]ボタンを押せば設定は終了(画面3)。
作成したWebフォルダに対して、ファイルをコピーしてみよう(画面4)。
なお、古いバージョンのWebフォルダを利用しているときに、大きなファイルをWebフォルダ内に作成すると途中でエラーが発生してしまうことがあった。しかし、Internet Explorer(以下IE)のバージョンを新しいものに置き換える(筆者はIE 5.5 SP2)ことによって、事象の再発はなくなった。
Windowsでは、Webフォルダを利用することでWebDAVリソースを取り扱うことが可能であるが、UNIX系のOSではどのようにするのか?
という問題が出てくる。UNIX用クライアントの実装はいくつかあるが、ここではCによる実装を主に取り上げたい。
cadaverは、コマンドラインによる利用を想定したWebDAVクライアントである。2001年9月14日時点の最新版は0.17.0で、http://www.webdav.org/cadaver/でソースコードのアーカイブ類が入手可能である。
cadaver 0.17.0のアーカイブはhttp://www.webdav.org/cadaver/cadaver-0.17.0.tar.gzになる。上記のアーカイブを入手して展開し、作成されたディレクトリ(cadaver-0.17.0)配下に移動して、
$ ./configure $ make $ su root # make install
とすれば問題なくインストールされる(注)。
注:とはいっても、環境によってはconfigureで失敗することがある。筆者の環境では、libexpatはあるがxml関係のヘッダがないというエラーが出たことがある。このような場合は、cadaverのexpatライブラリを利用するようにconfigureパラメータで与えるなり、一時的にexpatライブラリを見えなくするなりして対処してほしい。そのほか、Apache 2.0のCVS snapshotを使っているとコンパイルできなくなることもある。
cadaverの起動も簡単で、
$ cadaver http://www.foo.bar/DAV/
とすれば、URLで示した(この場合はhttp://www.foo.bar/DAV)WebDAVサーバに接続される。cadaverで利用可能なコマンド一覧を表4に示す。
コマンド名
|
説明
|
ls [path] | 現在のコレクションにある内容を表示する |
cd path | 指定したコレクションに移動する |
pwd | 現在どこのコレクションにいるかを表示する |
put local [remote] | 指定したローカルファイルをアップロードする |
get remote [local] | 指定したリソースをダウンロードする |
mget remote... | 複数のリソースをダウンロードする |
mput local... | 複数のファイルをアップロードする |
edit resource | 指定したリソースを編集する(環境変数EDITORで設定したエディタが起動される) |
less remote... | 指定したリソースをページャで表示する(環境変数PAGERで設定したページャが起動される) |
mkcol remote... | サーバ上にコレクションを作成する |
cat remote... | 指定したリソースを表示する |
delete remote... | コレクションでないリソースを削除する |
rmcol remote... | コレクションおよびその中に含まれるリソースを削除する |
copy source... dest | sourceで指定したリソースをdestにコピーする |
move source... dest | sourceで指定したリソースをdestに移動する |
lock resource | 指定したリソースをロックする |
unlock resource | 指定したリソースのロックを解除する |
discover resource | リソースのロック情報を表示する |
steal resource | リソースのロックトークンを奪い取る |
showlocks | 自分がかけたロック一覧を見る |
chexec [+|-] remote | リソースに対する実行権を変更する |
propget resource [propname] | 指定したリソースのプロパティを取得する。propnameが指定された場合は、propnameに設定された値を取得する |
propset resource propname | 指定したリソースのプロパティ名propnameに値valueを設定する(only dead property) |
set [option] [value] | オプションを指定する、もしくはオプション設定を見る |
open URL | 指定したURLに対して接続する |
close | 現在のコネクションを切断する |
quit | プログラム終了する |
unset [option] [value] | オプション設定を解除する |
lcd [directory] | ローカルのワーキングディレクトリを移動する |
lls [options] | ローカルのディレクトリリストを表示する |
lpwd | ローカルのワーキングディレクトリを表示する |
help [command] | ヘルプを表示する |
表4 cadaverコマンド一覧。なお、rmはdelete、mkdirはmkcol、mvはmove、cpはcopy、moreはless、bytとexitはquitの別名定義である |
以下に、そのほかどんなWebDAVクライアントがあるかを示す。もちろん、これだけということはないので、自分の用途に合ったものを探し出すなり、なければ作るなりすればよいだろう。
Copyright © ITmedia, Inc. All Rights Reserved.