moinmoinを高速化したい。FastCGIとmod_wsgiという方法があるらしい。後者のほうが優れているらしいので、導入を試みる。まずはmod_wsgi-win32-ap22py26-2.5.soの入手。apacheは2.2、pythonは2.6が必要なようだ。

apache2.0を2.2にアップグレードする。apache2.2をダウンロードし、インストール。インストールを完了させるには2.0のサービスを停止しておく必要あり。AliasとScript Aliasを2.2のhttpd.confに移植する。そのままだとforbiddenになるのでからOrder deny,allowとDeny from allを削除する。2.0をアンインストール。

python2.6のインストール。

moin1.8.3をpython2.6でインストール。moin.cgihttpd.confのpython25をpython26に書き換える。

mod_wsgi-win32-ap22py26-2.5.soをmod_wsgi.soに名前変更し、Apacheのmoduleフォルダに置く。httpd.confにLoadModule wsgi_module modules/mod_wsgi.soを追加。Apacheをrestart。error.logを確認。mod_wsgi: Compiled for Python/2.6.1.などとなっていればよさげ。

httpd.confの#ScriptAliasをScriptAlias /mywiki "C:/Moin/mywiki/moin.cgi"からWSGIScriptAlias /mywiki "C:/Moin/mywiki/moin.wsgi"に変更する。moin.wsgiに以下の3行を追加。


sys.path.insert(0, 'C:\Moin\mywiki')
Alias /moin_static183/ C:/Python26/share/moin/htdocs/
WSGIScriptAlias /moin/ C:/Moin/mywiki/moin.wsgi

Apacheをrestart。http://localhost/mywikiを確認。ちゃんと表示された。気持ち速くなっているか?