[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]
[webdav-jp:0283] Japanese filename on FreeBSD 4.5
- To: webdav-jp@xxxxxxxx
- Subject: [webdav-jp:0283] Japanese filename on FreeBSD 4.5
- From: Jun Yokoyama <jun@xxxxxxxxx>
- Date: Wed, 6 Mar 2002 08:28:10 +0900
- Delivered-to: webdav-jp@begi.net
- Posted: Wed, 6 Mar 2002 08:27:58 +0900
始めまして。横山と申します。
FreeBSD 4.5-STABLEにてmod_davを試しているのですが、例によって日本語ファ
イル名の扱いでつまずいています。
とりあえず今の状態を書きます。
mod_encoding-20011211a
mod_dav-1.0.3-1.3.6 (+mod_dav-1.0.3-1.3.6-l10n.diff)
以上はソースから、
apache-1.3.23,iconv-2.0_1,libiconv-1.7_1
はportsでインストールしてあります。
httpd.confのうち、DAV関係は以下のようにしてあります。
DAVLockDB /var/tmp/DAV/DAVLock
DavServerEncoding EUC-JP
<IfModule mod_encoding.c>
EncodingEngine on
SetServerEncoding EUC-JP
DefaultClientEncoding JA-AUTO-SJIS-MS
AddClientEncoding "Microsoft .* DAV" MSSJIS
AddClientEncoding "cadaver/" EUC-JP
</IfModule>
Alias /DAV /home/DAV
<Directory /home/DAV>
Options Indexes Includes FollowSymLinks
Dav On
</Directory>
この状態で、Windowsから見たwebフォルダに日本語ファイル名のついたファイ
ルを投げると文字化けしてしまいます。
ServerEncodingをUTF-8にしても同じです。httpdのログには、
[notice] Accept mutex: flock (Default: flock)
config_merge: entered
merged: enable_function == 2
merged: server_encoding == EUC-JP
というメッセージが残っています。
ファイルはSJISでそのまま保存されている感じです。
mod_encodingではうまく行かないのですが、代わりにmod_encmssjisを読み込ま
せて、
<IfModule mod_encmssjis.c>
EncodingEngine on
SetServerEncoding UTF-8
AddClientEncoding "Microsoft .* DAV" SJIS
</IfModule>
のように書いてやり、DavServerEncodingをUTF-8にすると、きちんとUTFに変換
され、ファイル操作も可能です。この時、mod_davの方は全く同じものを使って
います。
要するにiconvかな…という気がするんですが、何かお分かりになる方がいればサジェストをお願いします。
===================================
Jun Yokoyama
nysalor@xxxxxxxxxxx
jun@xxxxxxxxx
http://www.imasy.or.jp/~nysalor/
===================================