Apache関連 Part3

このエントリーをはてなブックマークに追加
84名無しさん@お腹いっぱい。
諸事情がありましてapacheの一部をNASサーバーモドキ的な利用方法を
行いたいのですが、日本語のファイル名がまれに存在します。
rewriteを使ってUTF-8のリクエストを解読しようともくろんでたのですが、、、

http://japache.infoscience.co.jp/rewriteguide/index.html

この辺を参考にしてこんな感じにしました。

[httpd.conf]
〜〜途中〜〜
RewriteEngine on
RewriteMap hoge prg:/usr/local/apache2/bin/rewrite.pl
RewriteRule ^/hogehoge/(.*)$ /hogehoge/${hoge:$1}
〜〜途中〜〜

[rewrite.pl]
#!/usr/local/bin/perl
use Jcode;
$|=1;
while(<>){
s/%([\da-f][\da-f])/pack("C",hex($1))/egi;
Jcode::convert( \$_, "euc" );
print "$_\n";
}

なんとリクエストの変換結果が毎回1行分perlの<>の辺?にバッファされて、
1回遅れで前回のリクエストの変換結果が返されてくるんです。
(1回前のリクエストのファイルが帰ってくる)

<>で読み込まれるのが1行単位だから問題が発生してるのではないか?
と思ってるのですがなにか解決方法はないでしょうかねぇ?

ちなみにapacheは2.0.39 perlは5.6.0なんですけど・・・
途方に暮れてます。