2010年 2月 16日 はてなブックマーク -

WebDAVの設定3(日本語ファイル名への対応)[2006年07月08日(土)]

まだWebDAVには問題が残っていた。日本語のファイル名(「ほげ.txt」など)が文字化けしてしまう。これに対処するには mod_encoding なるものを入れてやればいいらしい。
これは http://webdav.todo.gr.jp/download/(WebDAV Resources JP)から入手できる。

ダウンロードしたのは以下の2ファイル。
mod_encoding-20020611a.tar.gz
mod_encoding.c.apache2.20040616.c

まずは展開。
> tar zxvf mod_encoding-20020611a.tar.gz

で、mod_encoding.c.apache2.20040616.c を mod_encoding.c に上書き。
> cp mod_encoding.c.apache2.20040616.c mod_encoding-20020611a/mod_encoding.c

さて、lib の configure、make、install を行う。prefix を指定して、/usr/lib/ の下にlibiconv…ファイルを置くようにする。(指定しないと、—prefix=/usr/local を指定したとみなされて、/usr/local/lib の下に置かれる)
> cd mod_encoding-20020611a/lib/
> ./configure —prefix=/usr
> make
> make install

次は一つ上のディレクトリに移動して configure、make、install
> cd ..
> ./configure —with-apxs=/usr/local/apache2/bin/apxs
> make

ここで、WebDAV Resources JP に書いてあったとおり、エラーが起きた。対応方法も書いてあるとおり、gccを直接呼んであげる。
> gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -L/usr/local/lib -Llib -liconv_hook
> make install

これでOK。apache2 の下の modules ディレクトリを見ると、ちゃんと mod_encoding.soが入っている。

インストールが完了したので、apache2 の httpd.conf に以下を追加する。
> LoadModule encoding_module modules/mod_encoding.so

> <IfModule mod_encoding.c>
> EncodingEngine on
> NormalizeUsername on
> SetServerEncoding UTF-8
> DefaultClientEncoding JA-AUTO-SJIS-MS SJIS
> AddClientEncoding “cadaver/” EUC-JP
> </IfModule>

コレで完了!Apacheを再起動して動作確認だ。試すにはWindowsのパソコンから「ほげ.txt」というファイルでもWebDAV領域においてやればいい。
ちゃんと文字化けせずに置ければ問題なしだ。


追記:Apacheのバージョンによっては、ブラウザからWebdav領域を見たときに文字化けが発生する模様。。。
解決策としては、Webdavの設定(Location/Directory)の中に、以下の1行を記述する。
> IndexOptions charset=UTF-8

Posted at 00:18 | GLAN Tank/Debian(Apache, MySQL) | この記事のURL | Clip!!

WebDAVの設定2(パスワード設定)[2006年07月07日(金)]

さて、WebDAVが使えるようになったのはいいけど、今の状態ではURLさえ知っていればだれでも接続できてしまう。
ここは、パスワードが必要になるようにしよう。

httpd.confの<Directory /davroot>の中に以下を追加する。
> AuthType Basic
> AuthName “WebDAV secure zone”
> AuthUserFile “/usr/local/apache2/conf/.htpasswd”
> Require valid-user
パスワード無しでも閲覧のみ許すなどの場合は LimitExcept を使って

あとは、.htpasswd ファイルにWebDAVに接続を許すユーザを書いてあげればいい。
(xxxxはログインするときのユーザ名)
> /usr/local/apache2/bin/htpasswd -c /usr/local/apache2/conf/.htpasswd xxxx

確認は、いつものとおりApache2を再起動して、Webブラウザから接続。パスワードなしではログインできないことを確認しておこう。

Posted at 22:27 | GLAN Tank/Debian(Apache, MySQL) | この記事のURL | Clip!!

WebDAVの設定。[2006年07月03日(月)]

Apacheを入れた主要な目的は WebDAV を使うこと。
そこで、WebDAVの設定をしてみる。

まず、WebDAV用のフォルダを作成。
> mkdir /var/lock/dav
> chown nobody /var/lock/dav
> mkdir /davroot
> chmod -R 755 /davroot
> chown -R nobody /davroot
これで、ファイルの排他制御のための dav ディレクトリと、ファイルを置くためのdavroot ディレクトリを作成できた。

で、Apache2 の httpd.conf にWebDAVの設定を追加する。今のところ、SSLRequireSSLを付けて、SSL接続を必須にしている以外のセキュリティ対策は無し。パスワードもなしで接続できる。Options の設定も後で考えよう。

> <IfModule mod_dav_fs.c>
> DAVLockDB /var/lock/dav/davlock
> </IfModule>
>
> Alias /dav “/davroot”
> <IfModule mod_dav.c>
> DAVMinTimeout 600
> <Directory /davroot>
> DAV On
> Options None Indexes
> SSLRequireSSL
> Allow from all
> </Directory>
> </IfModule>

終わったら、Apacheを再起動してみる。これで、WebDAVの設定は完了。
Webブラウザで https://[ドメイン名]/dav を開くと GLAN Tank の中の /davroot がみえる。
“SSLRequireSSL”を指定しているので http://… では接続できない。


そして、WebDAVを他のPCから使うのに便利なのは「NetDrive」というソフト。
このソフトはFTPだろーがWebDAVだろーが、その領域を任意のドライブ(Mドライブとか)に割り当てられるというフリーソフト。
このソフトを使用して、GLAN TankのWebDAV領域をMドライブとかに割り当てておけば、パソコンに接続されたハードディスクの1つを使うような感覚でGLAN Tank上のディレクトリを使用できる。

ただ、このソフトはライセンスやらの大人の事情(?)で二次配布ができない。だから、Googleなどで「NetDrive」で検索して入手しないといけない。使いたい場合は、検索して入手してください。
で、パソコンにNetDriveをインストールしてみる。
ソフトが英語なのが難だけど、設定自体は簡単。以下のようにした。

Site Name:サイトの名前(自分がわかり易い名前でOK)
Site Address/URL:https://[ドメイン名]/dav
Server Type:WevDAV
Drive:M
Anonymous/Public Logon:On

他の設定は適当でOK。これで、WebDAV領域(https://[ドメイン名]/dav)をMドライブとして使えるようになった。
ファイルもマウス操作だけで簡単にドラッグ&ドロップできる。コマンドプロンプトで「cd m:」と打ち込めば、Mドライブを見る感覚でWebDAV領域を触れる。
NetDriveって凄いソフトだなぁ…。

試しに、Windowsで作成した「temp.txt」というファイルをMドライブにドロップする。
一瞬、転送中の画面が出て、転送完了。temp.txtがMドライブにコピーされた。
そこで、GLAN Tankの /davroot ディレクトリを見ると、ちゃんと temp.txt が存在している。…。NetDrive凄えぇ…。

Qaplaの覚書・メモ・備忘録・独言

2年前 | | 2010年 2月 16日 | このエントリーを含むはてなブックマーク