Manual:Wiki family/ja

以下は、複数のウィキを立ち上げるためにMediaWikiをセットアップする方法についての説明です. 同じサーバーにある複数のウィキをウィキ ファミリーまたはウィキ ファームと呼びます. 既知のウィキ ファームの一覧は にあります.

基本原則
ウィキファミリーの最も一般的な構成は、全てのウィキを単一のMediaWikiで実行します. このシナリオでは、次の一般的なステップが必要です.
 * 1) 通常のMediaWikiサイトをインストールし、そこからデータベーステンプレートを作成します. このデータベースは、中身が完全に空（どのテーブルにもデータがない）であっても、ウィキファミリーの任意のメンバーウィキ用のデータ (何らかの初期ページや利用者、インターウィキリンク等々) があっても、どちらでも構いません.  詳細は  を参照してください.
 * 2) 複数の場所からのトラフィックを1つのMediaWikiに制御するためにウェブサーバーをセットアップします. これは複数のドメイン、サブドメイン、またはサブディレクトリのためであり、シンボリックリンク、エイリアス、URLリライト、または他のメカニズムで行うことができます.
 * 3) 現在のウィキを検出するためのコードを   の先頭に追加します.  For wikis by domain name:
 * 4) Configure settings that must differ for all wikis. For example:
 * 5) Configure per-wiki overrides. This should include at least   and  . これは、別のファイルを使用することもできます. 例:

To create a new wiki, create its database and add its settings first, and then run.

巨大switch構文
これにより、同じソースコードのチェックアウトを使用して、1つのサーバーに複数のWikiをインストールすることが可能になります.


 * 1) Install the first wiki as normal, via the web or CLI installer, which sets up your database and generates a  file.
 * 1) After installation, rename the generated   file to include the wiki ID (e.g. database name), like.
 * 1) 上記の 1 と 2 を、作成するウィキの数だけ繰り返します.
 * 1) Create a new   file that will load the correct one.

ウィキが同じドメインにありながら異なるパス配下の場合 (例: 、  など) は、次のような使い方ができます.

Drupalスタイルのサイト
この設定はユーザに対して完全に透明で、画像ディレクトリの観点からはかなり安全であるという点が有利です.


 * 1) MediaWiki ファイル群をすべて含む基底ディレクトリを作成します. 例えば   です.
 * 2) バージョンを宣言するディレクトリに MediaWiki と追加ツール群を通常通りにインストールする (例えば  )
 * 3) バージョン宣言のディレクトリをコードディレクトリにリンク.  例
 * 4) 画像と設定を含む sites ディレクトリを作成:
 * 5) ウィキを通常の「/code」ディレクトリからセットアップ.
 * 6) インストール成功後に、  をサイトチェック時に適合する /site ディレクトリに移動.  例: http://example.com/mywiki に対応するため、example.com.mywiki ディレクトリを作成.  例   これの詳細情報は Drupal の   ファイルを参照.
 * 7) メディアファイルを使用するなら、サイトのディレクトリに images ディレクトリを作成.  例    必要なら書き込み可能に設定.
 * 8) Drupal スタイルの   ファイルをメインディレクトリに設置:
 * 9) 各下位サイトの   を修正し、適切な場所を指すようにします:
 * 10) まず   関連のコードをコメントアウト (1.15.3 では16-20行)、  で code ディレクトリに指定されるのを回避.
 * 11) 続いて以下の2行を挿入、画像ファイルへのアクセスを設定. 例: 、 変数のリセットを防ぐため、2行の挿入位置は   (1.15.3 では25行) 呼び出しより以降にする.
 * 12) 必要に応じて他の調整をする.
 * 13) Apache 2 のインストールを準備. 例: wiki.example.com
 * 14) 必要なら code ディレクトリにリンクを作成. 例
 * 15) 適切なVHost 構成を作成:
 * 11. サイトをローカルに開設した場合、 ファイル名をサイト名に変更.  これでサイトは動作します.

私の場合、 やデータベースのインストールと更新をするために、そこからコードの別のコピーを作成しました. 注意点は、付随する Drupal コードに記入した は、コマンドラインからメンテナンスのスクリプトを走らせた場合に定義されないため、この方式を採用すると、加工しない限り、標準のメンテナンスのスクリプトは使えません.

Ubuntu 用に修正した Drupal スタイル方式
Ubuntu/Kubuntu で複数のウィキとサブウィキ (ネスト式を含む) を作成するには、上記の Drupal スタイルと基本的には同じ考え方で修正した、簡略版の方式が利用できます.
 * Ubuntuguide.org MediaWiki のコツ

共通リソースを共有した並列ウィキ
言語毎に複数のウィキを用意し、さらに別に 1 つウィキを用意してここでメディアファイルを共有するのは、よい方法です.

例えば:


 * en.example.org -
 * fr.example.org -
 * de.example.org -
 * pool.example.org - Shared media files for all wikis.

データベース テーブルの共有
共有データベースの設定の手順は Manual:Shared database を参照してください.

ウィキ間リンク
MySQL データベースを編集してすべてのウィキ間のウィキ間リンクを設定しなければなりません (お好みで をインストールしてご使用ください). If the wikis are language editions, it is recommended to name the interwiki prefix after the exact language code. For example, "de" for the German wiki in your family. This way, you can connect pages about the same subject using language links.

例えば英語版のMain_Pageに Hauptseite 追加することで、「ドイツ語版」のメインページにリンクが作成されます. 詳細情報は を参照してください.

それから両方のウィキでは共有フォルダを2番目の接頭辞「pool」 http://pool.yourwiki.org/index.php/ として追加、チェックボックス「Forward」をオンにします.

アップロード
pool-wiki の「images」フォルダが書き込み可能であることを確認してください.

「Upload file-言語版ウィキ」リンクが poolwiki のアップロードサイトを指すよう、言語版ごとに設定を変更しておくと便利です. それぞれの言語版ウィキの LocalSettings.php を開き、以下のコードを追加.

1.17 の場合は $wgUploadMissingFileUrl を赤字リンクの時に pool-wiki にリダイレクトするように設定が必要.

プールウィキにのみアップロードを許可したい場合は、以下のような使い方をします.

共有ファイルを使用する
言語版ウィキで poolwiki のファイルを使用するには、それぞれの言語版ウィキの「LocalSettings.php」を開き、以下の行を追加します.

これで多言語ウィキにおいて pool ディレクトリから複数のファイルを呼び出そうとした時、例えば Image:MyLogo.png というメディアに統一できます.

画像の説明
それぞれの言語ウィキにおいて、(管理者として) MediaWiki:Sharedupload-desc-here メッセージを開きます.

次のようにテキストを変更します.

このファイルはここでのデータプールに保存されます. ファイルの詳細と解説は次のページに記載されています.

(ここで英文の先頭の「 [[ 」に続く「:」に注目. これを書くとページ左側のウィキ間リンクの一覧で「pool」を読み込まなくなります. )

共有ディレクトリの poolwiki に保存したメディアの説明文を出力したい場合、それぞれの言語版ウィキの「LocalSettings.php」に次のコードを追加します.

ウィキファームの拡張機能
1つのコードベースを使って複数のWikiのホスティングを簡素化しようとするMediaWikiの拡張機能がいくつかありますが、現在注目すべきは1つだけです.


 * - beta.


 * : For localisation issues of the and customising the Skins regarding the files ,  ,  ,  ,  ,   respectively.

関連項目

 * システム構成データベース: コメント受付
 * MediaWiki Farmers user group ならびに Wikifarm (ウィキファミリー利用者グループとメーリングリスト)
 * Manual:中央管理 ID — ユーザーのアカウントに「中央管理」用の識別子を与えるメカニズム.
 * MediaWiki Farmers user group ならびに Wikifarm (ウィキファミリー利用者グループとメーリングリスト)
 * Manual:中央管理 ID — ユーザーのアカウントに「中央管理」用の識別子を与えるメカニズム.
 * Manual:中央管理 ID — ユーザーのアカウントに「中央管理」用の識別子を与えるメカニズム.
 * Manual:中央管理 ID — ユーザーのアカウントに「中央管理」用の識別子を与えるメカニズム.