Index > moinmoin の サーバ(VPS)へのインストール記録
Tue, September 1, 2009

moinmoin の サーバ(VPS)へのインストール記録

VPS(Virtual Private Server)をレンタルしてそこに moinmoin をインストールしたのでその記録。

このエントリーに記録した Linux上のApacheへのインストール方法 は、moinmoin のオフィシャルヘルプの以下の項目

に該当します。 わたし自身も このページを参考にインストールしました。 (自分の都合と環境にあわせて多少アレンジしました。)

事前に把握しておいた方がよい基本認識

WWWサーバへインストールするウェブアプリケーションの中には、 ダウンロードしたアーカイブを WWWサーバのドキュメントルートに展開してインストール完了! というパターンもありますが、 moinmoinは違いました。

moinmoinは、

など、優れた設計になっている反面、Apacheと一緒に使う場合などインストール方法によっては、 多少手間がかかるところがあります。

moinmoinのサイトに HelpOnInstalling というよくできたヘルプコンテンツがあるので、 これを一通り読んでからインストール作業を行う必要がありそうです。

わたしが行ったサーバ設定

その結果、 wiki instance 関連のファイル・ディレクトリは...

moinmoin のインストール

Download

moinmoin download から moin-1.8.4.tar.gzを入手。

展開とセットアップ

作業用ディレクトリに展開します。

$ tar xfz moin-1.8.4.tar.gz

展開したディレクトリに移動して、セットアップを行います。
ここがポイントですが、諸事情により、 デフォルトのディレクトリにインストールしないで、 /var/www/moin にインストールします。

$ cd moin-1.8.4
$ su
# python setup.py install --prefix=/var/www/moin --record=install.log

wiki instance の作成

WikiInstanceCreation を参考に wiki instance を作成します。 今回は、/var/www/wiki-instance/moin_foobar 以下に wiki instance を作成します。
WikiInstanceCreation にあるインスタンス作成用スクリプトをこちらのディレクトリレイアウトにあわせて変更したスクリプト (mycreateinstance.sh)。

#!/bin/bash

# path of MoinMoin shared files
#SHARE=/usr/share/moin
SHARE=/var/www/moin/share/moin

# path to target instance location
#INSTANCE=$1
INSTANCE=/var/www/wiki-instance/moin_foobar

mkdir -p $INSTANCE
cp -R $SHARE/data $INSTANCE
cp -R $SHARE/underlay $INSTANCE
cp $SHARE/config/wikiconfig.py $INSTANCE

chmod 777 -R $INSTANCE

echo "Done."

mycreateinstance.sh を実行して、wiki instance を作成します。

$ su
# sh mycreateinstance.sh

wikiconfig.py の編集

mycreateinstance.sh にて作成した wiki instance 内の wikiconfig.py(/var/www/wiki-instance/moin_foobar/wikiconfig.py) を編集して、 data_dir と data_underlay_dir を適切に設定します。

#data_dir = './data/'
data_dir = '/var/www/wiki-instance/moin_foobar/data/'

#data_underlay_dir = './underlay/'
data_underlay_dir = '/var/www/wiki-instance/moin_foobar/underlay/'

moin.cgi の用意

moinmoin を動かすCGIスクリプトです。 WWWサーバのドキュメントディレクトリに配置する必要があるCGIスクリプトは moin.cgi だけです。

moin.cgi 配置(コピー)

moin.cgi を、後から設定するApache設定にあわせて配置しておきます。

※今回の設定では、/var/www/html.moin_foobar をドキュメントルートとしています。

$ cd /var/www/html.moin_foobar
$ mkdir cgi-bin
$ cp /var/www/moin/share/moin/server/moin.cgi /var/www/html.moin_foobar/cgin-bin/

moin.cgi の設定

/var/www/html.foobar/moin/mywiki/cgin-bin/moin.cgi を設定します。
設定内容は、 sys.path に使用するモジュールが配置されたパスを追加します。

sys.path.insert(0, '/var/www/moin/lib/python2.4/site-packages')
sys.path.insert(0, '/var/www/wiki-instance/moin_foobar')

Apacheの設定

http://moin.foobar.net/ というURLを使用し、VirtualHost で設定していることが前提です。
Apacheの設定ファイル(わたしの環境では、/etc/httpd/conf/httpd.conf) を以下のように編集します。

<VirtualHost *:80>
    DocumentRoot /var/www/html.moin_foobar
    ServerName moin.foobar.net

    ErrorLog logs/moin.foobar.net-error_log
    CustomLog logs/moin.foobar.net-access_log common

    ScriptAlias /mywiki /var/www/html.moin_foobar/cgi-bin/moin.cgi
    Alias /moin_static184/ "/var/www/moin/share/moin/htdocs/"
</VirtualHost>

ここまで設定したら、Apacheを再起動してエラーがないか確認します。

# /etc/init.d/httpd restart

作動確認と仕上げ

http://moin.foobar.net/mywiki にブラウザでアクセスしてエラーが出ないことを確認します。

wikiconfig.py

一通り作動に問題がないことを確認したら、/var/www/wiki-instance/moin_foobar/wikiconfig.py を編集します。

    # Site name, used by default for wiki name-logo [Unicode]
    #sitename = u'Untitled Wiki'
    sitename = u'My Wiki'

    # a) if most wiki content is in a single language
    page_front_page = u"MyStartingPage"

必要ならドキュメントルートに index.html を配置

moinmoin wiki の起点となるページは、 http://moin.foobar.net/mywiki/ になります。

http://moin.foobar.net/ にアクセスしたときに自動的に http://moin.foobar.net/mywiki/ へ移動するように、 moin_static184/index.html を参考に 以下のような内容の index.html を (/var/www/html.moin_foobar/index.htmlに)配置します。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
  <head>
    <meta http-equiv="refresh" content="0;URL=/mywiki/">
  </head>

  <body bgcolor="#FFFFFF" text="#000000">
    Click <a href="/mywiki/">here</a> to get to the FrontPage.
  </body>
</html>

以上

 Twitter
follow me on Twitter
 Categories