XREAにおけるkinowiki

kinowikiといふ日本語向けのWikiCloneがあって、しばらく設置したまま放置してゐたのだけれど、今度眞面目に使ってみることにした。ところが、最初のページではきちんと表示されてゐるが他のページでのURIの指定がをかしい。自己解決するのも面倒だったのでGoogle先生に頼ってみると、情報があった。

テーマがまともに読み込まれなかったり、アンカーが次ページのURLにアンカー先のWikiNameをくっつけたものだったりと、なんか色々変。

hideable/kinowiki.inc.phpの129行目でSCRIPTNAMEは定義されているけど、これじゃぁまともに動作しないと思われる。Apacheのバージョンによって_SERVERに渡される値が異なるからかもしれないけど、s184ではSCRIPT_NAMEにはPATH_INFOの部分もくっついてくる。なので、これを除去しないといけない。

というわけで、こんな風に書き換えればOK:
define('SCRIPTURL', $protocol . '://' . $_SERVER['SERVER_NAME'] . $port . str_replace($_SERVER['PATH_INFO'], '', $_SERVER['SCRIPT_NAME']));

XREAの広告表示が原因なので、広告免除を受ければ問題ないとのこと。

最新版の2.1では132行めを書換へればOK。念のためにコメントアウトしておいた方が無難。