sakura.cgi?num=XXXX という型式で記事に飛べなくなったので、MT の php 化でよく採用されている
Redirect permanent で静的 HTML ファイルに飛ばす
という手法を使おうと少し実験。
.htaccess に
Redirect permanent /nikki/sakura.cgi?num=1 http://griffonworks.net/nikki/archive/1.php
と書いて実際に num=1 にアクセスしてみた。
普通だとこれでリダイレクトされるだろうと思っていたのだが、何故かリダイレクトされない。
そこで "?" が悪いのかと思って "&" に置き換えてみたらリダイレクトされた。
ならばと .htaccess の方を "\?" として sakura.cgi?num=1 にアクセスしてみたのだが、これでもやっぱりダメ。
どうやら "?" 以降の文字列は見ない仕様になっているのかはわからないが、とりあえず "?" が付いているとリダイレクトしてくれない。
それならばと強引な手法でリダイレクトしてみた。
というのも、sakura.cgi ロードの初期部分で条件分岐があるのだが、そこで
num=* もしくは date=* かつ、mode=null であれば Redirect permanent する
という perl スクリプトを挿入、HTML ヘッダで 302 permanent でリダイレクトさせるようにした。
とりあえずこれでトラックバックした分と日単位での表示は今の静的 HTML にリダイレクトさせられたが、他の分に関しては諦めるか。
ちなみにこのリダイレクトコードは、条件分岐用プラグイン (redirect.pl) に追加してあるので、使わないときはプラグインのファイル名を変更するだけで外せるというお手軽仕様。
submit_check のプラグインがここで使うとは思っても見なかったり。
└ G兄
└ G兄
└ G兄
└ G兄
└ G兄
└ G兄
└ G兄
└ G兄
└ 山銀
└ G兄