- 118 名前:nobodyさん [02/07/27 12:07 ID:XCYe1qpS]
- 諸事情がありましてapacheの一部をNASサーバーモドキ的な利用方法を行いたいのですが、日本語のファイル名がまれに存在します。rewriteを使ってUTF-8のリクエストを解読しようともくろんでたのですが、、、
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なんですけど・・・途方に暮れてます。
|

|