wikieditish 問題解決

2004/05/10 Mon 23:10

wikieditish.cgi に変数や詳しいエラーメッセージを表示させながらサーバ上で色々試してたら、wikieditish プラグインおよび wikieditish.cgi がうまく動かなかった原因が判明。XREA では path_info が2つ重なってスクリプトに渡されるようです(/hoge/foo → /hoge/foo/hoge/foo となる。何のメリットが?)。なのでここの対策を施しつつ、~.cgi のディレクトリ設定を絶対から相対パスに直したら、どちらともあっさり動作。この問題、XREA で path_info を利用する機会があるユーザにとっては常識化してたっぽい。以下、blosxom.cgi 105行目付近の対策例。

# before :
my @path_info = split m{/}, path_info() || param('path');
shift @path_info;
# after :
my $tmp_path_info = path_info() || param('path');
$tmp_path_info =~ s/(.+)\1/$1/;
my @path_info = split m{/}, $tmp_path_info;
shift @path_info;

とにかく2番目の問題も解決。しかも両選択肢が同じ対策で一挙に使えるようになったので、どちらにするか迷うところ。でも~.cgi にはアップロード機能があるし、独立動作なので改造もしやすそう。タイムスタンプ修正機能を組み込めたらこっちを使おうかな。来週あたりに実装を試みてみたい。

Posted at 23:10 | Blosxom | 0 writebacks | edit
Tagged as: , ,

writebacks

trackback URI

http://cu39.s57.xrea.com/blosxom/20040510_02.trackback


SPAM ロボットを排除するため文字判読テストをお願いしています。画像に書いてある2つの単語を入力してください。単語の間には半角スペースを入れます。