MoinMoin 1.9.0 on Windows with mod_wsgi
メリークリスマス!
MoinMoin 1.8.4 on Windows with mod_python からのアップデート作業です。
資料:
材料
前回は mod_python で導入しましたが、なんか対応しなくなったっぽいので推奨らしい WSGI で動かす事にします。windows 環境の mod_python だと python 2.5 縛りっぽかったので 2.5 でしたが、今度は python 2.6 が必要みたいなので 2.6 を導入します。
構成
OS | Windows 7 x64 |
Apache | C:\Program Files (x86)\Apache Software Foundation\Apache2.2 |
Python | C:\Python26 |
DocumentRoot | E:\inetpub\wwwroot |
MoinMoin インスタンス | E:\inetpub\app\Moin\etc |
MoinMoin URL | http://localhost/moin/ |
MoinMoin インストール
前のバージョン(1.8.4)のファイルが残ってると後でエラーを吐くので、残ってる場合は掃除しましょう。
(C:\Python26\Lib\site-packages\MoinMoin 以下)
wget http://static.moinmo.in/files/moin-1.9.0.tar.gz gzip -dc moin-1.9.0.tar.gz | tar xvf - cd moin-1.9.0 C:\Python26\python setup.py install
MoinMoin インスタンス作成(更新)
cd /d C:\Python26\share\moin xcopy data E:\inetpub\app\Moin\etc\data xcopy underlay E:\inetpub\app\Moin\etc\underlay copy config\*.* E:\inetpub\app\Moin\etc\*.* copy server\*.* E:\inetpub\app\Moin\etc\*.*
MoinMoin 設定
E:\inetpub\app\Moin\etc\moin.wsgi
パスを通してるなら必要ないが通していないのならば要設定とのこと。
# a1) Path of the directory where the MoinMoin code package is located. sys.path.insert(0, 'C:/Python26/Lib/site-packages') # a2) Path of the directory where wikiconfig.py / farmconfig.py is located. sys.path.insert(0, 'E:/inetpub/app/Moin/etc')
設定ファイル: 構造が 1.8.4 とは変わってるので横着せずに書き直すべし。
E:\inetpub\app\Moin\etc\wikiconfig.py
- 静的ファイルの接頭パス: /moin_static
- インデックスページの設定: FrontPage
- スーパーユーザーの指定: hoge
- ユーザー hoge に全権限を与える: acl_rights_before 〜
- ログインユーザーに編集を認め、他は読み取りのみ: acl_rights_default 〜
- ナビゲートにいろいろ追加: navi_bar 〜
- テーマの設定: modernized
- 言語設定: ja
- 新規アカウント作成の禁止: actions_excluded 〜
url_prefix_static = '/moin_static' page_front_page = u"FrontPage" superuser = [u"hoge", ] acl_rights_before = u"hoge:read,write,delete,revert,admin" acl_rights_default = u"Known:read,write,delete,revert All:read" navi_bar = [ u'%(page_front_page)s', u'RecentChanges', u'FindPage', u'HelpContents', u'TitleIndex', u'HelpOnMoinWikiSyntax' ] theme_default = 'modernized' language_default = 'ja' actions_excluded = multiconfig.DefaultConfig.actions_excluded + ['newaccount']
Apache 設定
mod_wsgi-win32-ap22py26-3.0.so を Apache2.2\modules に放り込む。
conf/httpd.conf
WSGI 設定が楽ちんですね。
#WSGI モジュールロード LoadModule wsgi_module modules/mod_wsgi-win32-ap22py26-3.0.so ## ## MoinMoin with mod_wsgi ## WSGIScriptAlias /moin E:/inetpub/app/Moin/etc/moin.wsgi Alias /moin_static "C:\Python26\Lib\site-packages\MoinMoin\web\static\htdocs"
これでアップデートと mod_wsgi への移行が完了しました。
おまけ
DocBook 書き出しの為に PyXML をインストールする。
Browse Python/XML Files on SourceForge.net から PyXML-0.8.4.tar.gz をダウンロード。
gzip -dc PyXML-0.8.4.tar.gz | tar xvf - cd PyXML-0.8.4 C:\Python26\python setup.py install
VS2008 SP1 でコンパイルが通りました。
以前、インストールを試みた時にはエラーが出て PyXML instllation failed Fraxinus/ウェブリブログ を参考に MinGW でやったんだけど。まぁ動いてるのでよしとする。
DocBook に書き出して Apache FOP で PDF にしてウマー。便利だなぁ。