xreaの“クセ”がようやく理解できた今日この頃。

 phpも使える「中級者以上向け」レンタルホームページスペースのxreaだが、昨日公開した(と思っていた)へっぽこプラグインがダウンロードできない、右クリックでも保存ファイルがhtmlになってしまう、という問い合わせが。
 ……で、いろいろ試してみたのだが、結局ダウンロード時にカウントをとるために使っているステルスcgi*1がおかしな動作の要因になっていたことを突き止めた。とはいっても、そのcgiが悪いのではなく、問題なのはxreaの動作の方である。PukiWiki本体の設置にも特殊な設定が必要なのは、実はxreaが「cgiだとかphpの出力はすべてtext/htmlだ」とユーザー側からすれば"勝手に"解釈してしまうことが原因だった、ということがようやくわかった次第。我ながら情けない限りである。

教訓:

 xreaでcgiやphpなどのスクリプトを動かすにあたり、その出力をtext/htmlと解釈されては困る場合、.htaccess

LayoutIgnoreURI (スクリプトへのパスとファイル名)

と記述「しなければならない」。ただし、無料サーバーの場合、広告表示義務は別途守らなければならないので、PukiWiki本体のようにhtmlも出せばRSSも出すようなスクリプトを指定する場合には、html出力に別途所定の広告コードを含めるよう、手を加えなければならない。


 ――ただ、私の場合、PukiWiki本体のRSS出力機能は捨てて、RSSWriterでWikiの外側に作ったRSSを指定させる*2ように書き換えているので、PukiWiki本体はあえてこの指定をしていません*3。「所定の広告コード」を挿入すると、Ad-Sense広告が出てこなくなってしまい、私が運営しているようなある意味「特殊」なサイトでは、広告効果がまったくなくなってしまう、という理由もあるのですが(爆)

*1:.htaccessApacheの"RewriteEngine"なるものが使えないといけないので、どこへでも設置できる代物ではない

*2:こうすれば更新内容の他にお知らせなども自由に書けますからね

*3:すなわち、私がLayoutIgnoreURIで指定しているPukiWikiのファイルは、text/cssを吐き出すskin/pukiwiki.css.phpのみ。まあ、こうしないと、PukiWikiのあるディレクトリ配下にWeb拍手やらメールフォームやらphpBB=フォーラム型掲示板=やら普通ののhtmlやら、まあいろいろ置いている私には受け入れがたいわけですが