mediawiki のインストール

[戻る]

はじめに

執筆用に作った職場の 24 時間稼動 の Linux マシンですが, 仲間内との情報共有に MediaWikiを 入れてみました. Plamo の CD を漁ると簡単に入るのかもしれませんが, なんとなくソースを拾って入れました. その顛末を書いておきます. とは言え, 思い出しながら書いている/試行錯誤しながら行ったので 不要なものや必要だけど書いてないものがあるかもしれません. はい

なお、本サーバは職場 LAN 限定で動かすためセキュリティに関しては ほとんど考慮してません。万一本情報を元に公開サーバを構築する際は その辺の情報も収集・実行してください。

必要なもの

バージョンに関しては私がダウンロードした時点で最新のものということ以外, 特に深い理由はありません. また, apache は plamo に元々入っていた 2.0.54 を使っています. 昔のことなので定かでありませんが, AddDefaultCharset を off にしたとか, どのディレクトリでも cgi が動くようにしたとかの変更を行っていたはずです.

mysql のインストール

以下のような感じです. configure に prefix を付けるのがコツみたいです. 赤文字の PASSWORD は適当に読み替えてください.

# su
# groupadd mysql
# useradd -g mysql mysql
# exit
$ zcat mysql-5.0.33.tar.gz | tar xvf -
$ cd mysql-5.0.33
$ ./configure --prefix=/usr/local/mysq
$ make
$ su
# make install
# cd /usr/local/mysql
# bin/mysql_install_db --user=mysql
# chown -R root .
# chown -R mysql var
# chgrp -R mysql .
# bin/mysqld_safe --user=mysql &
# bin/mysqladmin -u root password PASSWORD
# bin/mysql -u root -p mysql
> grant create, select, insert, update, delete, lock
  tables on wiki.* to wiki@localhost identified by 'password';
> create database wiki;
> \q
# exit

php のインストール

以下のような感じです. これまた configure の際パラメータを沢山付けるのが コツのようです. 私の環境では apach は /opt/httpd に入っていましたので以下のようにしてますが, ここは環境によって変わるでしょう.

$ zcat php-5.2.0.tar.gz | tar xvf -
$ cd php-5.2.0
$ ./configure \
  --with-apxs2=/opt/httpd/bin/apxs \
  --enable-magic-quotes \
  --with-xml \
  --enable-mbregex \
  --enable-mbstring \
  --enable-zend-multibyte \
  --with-mysql=/usr/local/mysql \
  --enable-ftp --with-zlib
$ make
$ su
# make install
# cp php.ini-dest /usr/local/lib/php.ini
# exit

MediaWiki のインストール

apache からみえる所で mediawiki を展開し, その下にある config の パーミションを開けたり, LocalSettings.php を移動させたりします.

$ zcat mediawiki-1.9.1.tar.gz | tar xvf -
# su
# mv mediawiki-1.9.1 /opt/httpd/htdocs/wiki
# cd /opt/httpd/htdocs/wiki
# chmod a+w config

その後, web ブラウザで上記ディレクトリ内の index.php をアクセスします. 何やら config しろと表示されますのでその通りやります. まぁ

Site nameTEST
Languageja
Database nameTEST
Database usernamemysql
Database passwordPASSWORD
メール関係はすべて Disable でいいかと思います. この辺は説明文を読めば分かると思います. 検索すればいろいろ詳しい説明もありますし... なお例によって赤字はお好みで変えてください.

最後に以下のコマンドを実行します.

# cp config/LocalSettings.php .
# rm -rf config
# exit

ブラウザで mediawiki を入れた URL にアクセスして 「メインページ」が現れたらインストール成功です.

調整

注記 *1

PHP なる言語を触るのは初めてだったのですが, どうも date()関数の第二引数は, デフォルトで time(), すなわち GMT (世界標準時) における通算秒数を入れないといけないのに, 調べてみると変数 $unix に JST (+9 時間) の値が入ることが原因のようです. 他にも date() を使っている所があるし, これだけで済むとは思いません. もっと根本的に直した方がいいことは分かっていますが (作者にフィードバックすれば喜ばれるかもしれないし), 下手にいじると, どこがどうなるか不明だし, 一応気づく表示問題は解決されたためやっていません.

ちなみにこの問題は web で結構検索してみたのですが, 「これは」というのは 見つかりませんでした. 他では起こらないのかもしれません. たまたま今回インストールしたバージョンに入ってしまった不具合なのかもしれません.

注記 *2

/usr/local/lib/php.ini の session.save_path に /tmp/php と書かれているくせに そのディレクトリが無かったことが原因. 無ければ掘ればいいのに.... /tmp ディレクトリだからシステム起動時に「無ければ掘る」というフレーズを 追加した方がいいかもしれません. もしくは session.save_path の指定先を別にするとか..


2007.1