mod_davで漢字を扱う!
に関するインストールメモ(2002/02/17, 更新日:2003/03/28)
・いままで行った mod_dav の設定では、漢字が使えません〜。使える様に一瞬見えてもすぐに宇宙人語(笑)になってしまいますので、こまった困ったと思ってました。でも悩み1日で解決でき非常にうれし!(さすがインターネット)
1.Harmeln's Home Page[Apache+mod_davで日本語ファイル名を扱う方法]を参考にして入れてみました。
2.mod_encoding をダウンロードし解凍&コンパイルを行う。
作業手順
# wget http://www.atmarkit.co.jp/flinux/special/webdav/mod_encoding.c
# wget http://pine.zero.ad.jp/~zaa52609/Info/KnowHow/patch/mod_encoding.diff
# patch mod_encoding.c mod_encoding.diff
# /usr/sbin/apxs -c mod_encoding.c
# /usr/sbin/apxs -i mod_encoding.soコンパイル時に warning が出て嫌だという人は、下記の赤部分を追加してください。
if (iconv(cd, &srcbuf, &srclen, .......
↓
if (iconv(cd, (const char **)&srcbuf, &srclen, .......
config_merge, /* server config merger */
↓
(void *)config_merge, /* server config merger */3.httpd.conf に mod_dav 定義を記述します。
# cd /etc/httpd/conf
# vi httpd.conf
LoadModule encoding_module modules/mod_encoding.so4.srm.conf に mod_encoding の定義を記述します。
<IfModule mod_encoding.c>
EncodingEngine On
SetServerEncoding UTF-8
AddClientEncoding UTF-8 "Microsoft-WebDAV-MiniRedir/"
# for Windows 2000 SP2 with .NET
#AddClientEncoding UTF-8 "(Microsoft .* DAV\$)"
AddClientEncoding SJIS "Microsoft .* DAV"
# for Windows XP only
AddClientEncoding CP932 "Microsoft-WebDAV*"
# for RealPlayer
AddClientEncoding CP932 "RMA/*"
# for Other
AddClientEncoding SJIS "xdwin9x/"
AddClientEncoding EUC-JP "cadaver/"
</IfModule>5.ここまできたら apache を再起動してみましょう。
# /etc/rc.d/init.d/httpd restart
6.実際にwindows2000から参照し、漢字を含むファイルを作成してみましょう。
次なる問題点・・・・。Basic認証を行ったときに WindowsME/2000 では問題ないのに、WindowsXP からは認証できないという悩み・・・・つづく♪