tracをmod_python経由で動かす

CGIで動作させるよりもかなり高速で動くようになるそうです。当たり前ですが。

さっそくmod_pythonをインストール。当然ながらこれもRPMでインストール。RedHat Enterprise Linux ES4のCDのDISC2に入っている

mod_python-3.1.3-5.rpm

をインストールすれば大丈夫。昨日のエントリの通りに作業してあれば、特に依存関係の問題は出ない。


んでもってApacheの設定に以下のような記述を追加。

<Location /[trac_path]>
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /home/****/trac
</Location>

PythonOptionのユーザー名は****で伏せさせてもらいました。
Locationのパスはtracにアクセスするときのパスを指定すればOKです。


・・・と簡単に書いてますが、結構苦戦しました。
失敗してても500エラーの画面しか確認できないし、Apacheのエラーログにも特に記載がないし・・・。

最終的に解決の糸口が見つかったのはpythonのエラーメッセージだったりするので、はまった場合は素直に

<Location /[trac_path]>
...
PythonDebug on
</Location>

とするのがおススメです。はい。
苦戦した理由はホントに恥ずかしいので、ここにはとても書けません(笑