Manual:Running MediaWiki on FreeBSD/ja

FreeBSDでMediaWikiを動作させるための要件の大半は(パッケージではなく)portsシステムからインストールすることが出来ます。http://www.freebsd.org/ports/ をご覧下さい。

MediaWiki自体もports tree (/usr/ports/www/mediawiki)から直接インストールすることができます。新しいバージョンを稼働させたい場合、あらかじめ依存関係のソフトウェアをインストールしたいと思います。

Apache、PHPとMySQLを一緒にインストールする

edit

このガイドはFreeBSD 4.11のみです。php4をインストールすることで同時にmysql-clientとapacheが含まれます。stand/sysinstallよりもpkg_addを通してパッケージをインストールすることをお勧めします。sysinstallはパッケージの正確なバージョンの情報を把握するのに問題があるからです。インストールを終えた後、mysql-clientのバージョンを確認して同じバージョンのmysql-serverをインストールして下さい。筆者のシステムに導入したパッケージのバージョンは以下の通りです:

  • apache-1.3.29_3.tgz
  • mysql-server-4.0.18_1.tgz
  • mysql-client-4.0.18_1.tgz
  • php4-4.3.6.tgz

インストールのために利用したコマンドです

pkg_add -r php4-4.3.6.tgz
pkg_add -r mysql-server-4.0.18_1.tgz

データベース

edit

MySQLはdatabases/mysql40-serverのportsからインストールします。

Web server

edit

Apacheはwww/apache13もしくはwww/apache2のportsからインストールすることが出来ます。

PHPはportsのlang/php4から拡張機能はlang/php4-extensionsからインストールすることが出来ます。これによってApacheのDSOモジュールとPHPエクステンションはダイナミックに読み込まれます。

www/apache2を利用するとき、http.confAddType application/x-httpd-php .php .phtmlの行を追加することを忘れないで下さい。

エクステンション

edit

php4-extensionsから以下のエクステンションが必要なことがあります:

  • php4-mysql - 見たとおりデータベース用です
  • php4-iconv - キャラクタセットの変換
  • php4-imagick - 画像操作ライブラリ
  • php4-ldap - LDAP認証を利用する場合 (将来の機能)
  • php4-mbstring - マルチバイトの操作
  • php4-pcre - 正規表現(MWは多く使います)
  • php4-readline - CLIスクリプトの機能用
  • php4-session - セッションのサポート
  • php4-xml - XMLパーサ
  • php4-zlib - 圧縮オブジェクトストレージ

上記のリストは不完全かもしれません。

上記のパッケージを個別にインストールしたい場合、php4-imagickの代わりに graphics/ImageMagickをインストールする必要があります。

Turckオプコードキャッシュを利用したい場合、www/turck-mmcacheをインストールします。

TeXのサポート

edit

数式のレンダリングをするためには以下のパッケージをportsからインストールします:

  • lang/ocaml
  • print/latex
  • print/dvips
  • graphics/ImageMagick
  • print/ghostscript-gnu-nox11

FreeBSD 4.11ユーザーのために: dvipsはパッケージリストで利用できないので代わりに次のパッケージをインストールして下さい:

  • ocaml
  • teTeX
  • ImageMagick
  • gmake

teTeXは既にlatexとdvipsを含みます。しかしながらlatex2eと衝突します。 ですのでシステムにlatex2eが存在しないことを確認して頂くようお願いします。

texvcのMakefileはGNU makeを必要とします。ocamlをインストールしたらMediaWikiパッケージのmath/サブディレクトリに移動して'gmake'を実行します。

The texvc実行ファイルがinstall.phpによってインストールされていて利用する場合、 $wgUseTeXをtrueに設定するか手作業でコピーします。wiki.phtmlがある場所の'math'サブディレクトリに設置して下さい。

FreeBSDのあるバージョン(5.3)では正しく動作させるためにportsディレクトリのcvsupが要求されることに注意して下さい。このインストレーションを試してエラーになったら、ports treeをcvsupして上記のportsを --特にImageMagickを-- 再びmakeして下さい 。

MediaWiki-1.1.0とそれ以前のリリースはportsをサポートしないdvipsをオプションとして利用します。最新のCVSバージョンはより互換性のあるオプションを使用しています; 古いリリースを利用する場合、render.mlを編集して最初の行にある"-o -"を"-f"に変更してtexvcをビルドします。

latex、dvips、とconvertはtexvcのためにPATH内になければならないことに注意して下さい。apacheがシステムのスタートアップで起動する場合、PATHで/usr/local/binを持っておらず、このPATHはtexvcによって継承され画像の出力が行われません。起動した後にapacheを再起動するか次の行を LocalSettings.phpに追加して下さい:

 putenv("PATH=".getenv("PATH").":/usr/local/bin");

インストレーションの中には、dvipsがtexvcのコマンドラインパラメータに関する問題を抱えているものがあります: 'ps:-'をstdinのための入力ファイル名識別子として認識しません。ファイルにある平文の'-'を使用する次の行を変更してtexvcを再びコンパイルして下さい:

let cmd_convert finalpath = "/usr/local/bin/convert -quality 100 -density 120 - " ^ finalpath ^ " >/dev/null 2>/dev/null"

行列のサポート

edit

数学ライブラリのデフォルトのインストールではasmfontsがインストールされていません。asmfontsはmatrix、bmatrix、とpmatrixの数学ライブラリのために利用されます。

次のURLで使い方とフォントの入手方法を見ることが出来ます:

フォントは/usr/local/share/texmfにインストールする必要があるようです。

Memcached

edit

databases/memcachedからインストールします。 重大なセキュリティリスクの原因にならないように、外部からアクセスできないようにすべきことを覚えておいて下さい。jail上で稼働させている場合、localhostのアドレスはNet-visibleアドレスにマップされます。

問題と解決方法

edit
  • スタンドアロンのphpとmodule-phpのために異なるコンフィギュレーションをしました。install.phpのデータベース関数がスタンドアロンのphpで動作しません。
解決方法 - ファイルをコピーするためにコマンドラインからinstall.phpを実行します。それをinstall2.phpにコピーしてファイルをコピーする部分をコメントアウトします。db rootパスワードを決め打ちしてコマンドラインの入力が期待される行を削除します。ウェブサーバからinstall2.phpをアクセスすることでそれを実行します。
  • CsロケールでMediaWikiをインストールしましたがwiki.phtmlが動きません。
LanguageCsは動作するためにLanguageUtf8.phpが必要です。LanguageUtf8.phpを同じディレクトリにLanguageCs.phpとしてコピーして下さい

wiki.phtmlがそれでも動作しません

Setup.phpでLanguage.phpの後のLanguageCs.phpを含むことを決め打ちして下さい
  • インストールする間に次のようなエラーを取得しました:
"PHP's XML module is missing; the wiki requires functions in 
this module and won't work in this configuration.
If you're running Mandrake, install the php-xml package."
phpエクステンションがインストールされているか確認して下さい。
$cd /usr/ports/lang/php(4|5)-extensions
$make install distclean
メニューからxmlを選択して下さい
$ldconfig (新しくインストールしたxmlライブラリにリンクするため)
apacheを再起動します