MediaWiki作業メモ (増田 2009年9月から)
ここには、某サーバーへの導入の準備として、おもに、増田が個人で管理しているサイトにMediaWikiを導入し利用を試みてわかったことを覚えのために書いてある。ただし、個別サイトの詳しい情報はここには書かないこともある。
- MediaWikiについて全般
- http://www.mediawiki.org/ にある。
- Wikipediaで使われているソフトウェアであり、多数の言語に対応している。
- 最新版アーカイブは mediawiki-1.15.1.tar.gz
- PHPおよびrelational database (標準はMySQL)を前提とする。
- ページに階層構造を与えることは可能だが勧められていない。標準のインストールでは「ノート(discussion)」と「利用者(user)」のページだけで有効。サブページ機能 http://www.mediawiki.org/wiki/Help:Subpages/ja 参照。
- このメモで「1つのwiki」とは、1回のインストールで動作可能になる対象をさす。
- 言語(人間の)
- wikiが提供するキーワードの部分の言語は、1つのwiki全体についてインストール時に設定されるが、利用者が実行時に切りかえることができる(日本語メニューならば、個人設定-利用者情報-使用言語)。ページごとに設定することはできないようだ。
- コンテンツの内容の言語は混ざっていてもよい。文字コードはdefaultでutf-8が使われる。
- しかし、ページの表題がリンクされるキーになる構造なので、表題に日本語文字を含むページは他の文字セットを使う人にはわかりにくいものになる。
- なお、Wikipediaでは言語別にホスト名を分けたような形をとっている。
- 以上の状況から、日本語と英語(文字セットの違う言語)の混ざったwikiを作るとわかりにくいものになりそうだ。
- (1) 2つのwikiを別々にインストールする。
- 増田の実験サイト mahasri.world.coocan.jp では、wiki (英語)とwikija (日本語)を作ってみた。(その後、廃止した。)
- wiki間の連携機能で相互参照ができるはずだが、別サイト間のリンクの省略記法にすぎない。当面、別サイトとみなしてURLで相互参照する。
- (2) 内容が日本語のページも表題はASCIIに限ることにして共存させる。macroscope.world.coocan.jp の wiki はこの方式にしてみる。(ただし日本語表題のページも作る可能性はある。)
- この場合、MediaWikiのヘルプページと同様、サブページ機能を使って、日本語のページの表題は英語表題に「/ja」をつけたものにするのがよいかもしれない。
- (3) mediawikiソフトウェアのインストールは1セットでも、複数のwikiを運用することは可能らしい。ただし設定のしかたがわかりにくい。 http://www.mediawiki.org/wiki/Manual:Wiki_family 参照。 これはまだ試みていない(2009-11-06)。
- 読み書き権限
- 読み書き権限は、anonymous (ログインしない場合)、ログインしたユーザー、管理者の3階層で設定できる。たとえば「保護」とすれば書きかえられるのは管理者だけとなる。しかし、ユーザー名ごとに書ける・書けないの設定をすることはむずかしいようだ。
- 標準のインストールでは、anonymousでも書きかえ可能だが、LocalSettings.phpに1行追加して、anonymousでは編集できなくした。ただし、anonymousで「アカウント作成」をしてログインして書きかえることは可能である。
- wikiの一部をパスワードを知っている人だけが読み書きできるようにすることはむずかしいようだ。そこで、公開したくない情報は、別にインストールしたwikiに置き、wikiとは別の方法で、入り口でパスワードをチェックするようにする。
- 書式
- 次のマニュアルページ参照。 英語 http://www.mediawiki.org/wiki/Help:Formatting, 日本語 http://www.mediawiki.org/wiki/Help:Formatting/ja 。
- 他のwikiソフトウェアとは、書式の基本は似ているが、個別の点が、よく使うところでも違う。(たとえば箇条書きを示す記号が違う)。
- 拡張機能
- "extension" が多数作られている。その多くのインストールのしかたのうち、次のところまではだいたい共通。
- wikiのディレクトリの下のextensionの下にパッケージごとにディレクトリを作って内容を置く。
- LocalSettings.php を編集し、require_onceで、extensionのスクリプトを呼び出す (呼び出される名称はパッケージ名の場合も違う場合もある)。
- 次の手続きが必要かどうかはパッケージごとに違う。
- サーバー上で php maintenance/update.php を実行する。(これはサーバー上の実行権限が必要である。)
インストール: coocan (Nifty) サイトでの経験
- coocan (Niftyのサイト)の場合、mysqlがすでにインストールされている。
- 「管理ページ」の「データベースの設定」で「データベースアカウントの作成」をする。
- homepageの下にwiki(例)ディレクトリを作り、そこにMediaWikiのスクリプト類を展開したものを置く。
- ウェブブラウザからhomepageの下のwikiにアクセスして、インストールスクリプトを実行する。設定した項目はほぼ次のとおり。ただし用語はメニューのとおりではない。
- サイト名(wikiの入り口URLにアクセスしたときtitleとして表示される名前)
- 言語(英語または日本語)
- 管理者の(wiki内での)ユーザー名とパスワード
- データベースのホスト名、データベース名、データベースユーザー名、そのパスワード。(この部分、coocan特有の約束があり、ほかのサイトでは違うはず)
- データベース内の変数のprefix (同じmysqlに対してMediaWikiを複数インストールする場合区別が必要)
- MySQLのtableの作りかたに関するoption (InnoDBを選択してみた。しかしphpMyAdminからデータベースを見るとtypeはMyISAMとなっている。coocanのMySQLではInnoDBは有効でないのかもしれない。)
- 管理者メールアドレス
- メール受信に関するオプション。(メール使用全体は有効としたが、変更通知はしないことにした。)
- MySQLのutf8処理に関するオプション。coocanでは古いバージョンからあった機能を選ぶ必要があるようだ。
- できたLocalSettings.phpを、wiki/configの下から、(編集したうえで)、wikiの直下に移動する。configディレクトリを中身ごと消す。
- LocalSettings.phpの途中を書きかえた内容
- 画像のuploadを可能にする。
- 画像の変換にImageMagickを使わない。
- LocalSettings.phpに追加した内容
- anonymousでEditできなくする。
- extensionをrequire_onceで呼び出す。(Cite, AllowAncherTags)
- extensionを使う場合は、wiki/extensionの下に、extension名のディレクトリごとに、展開したものを置く。
- 拡張機能について
- coocanではインストールの際にログインしてphpスクリプト(多くの場合はmaintenance/update.php)を実行する必要のあるものは使えない。インストールスクリプト実行不要のものと、Mediawiki本体のインストールのようにブラウザから実行するように作られているものは使える。
某サーバーへのインストールに向けて準備・相談が必要なこと
- ウェブサーバー運用の確認
- ファイルシステムのどこがウェブサイトに対応するのか?
- /etc/httpd/conf/httpd.confによれば、DocumentRootは/var/www/html 。このまま運用するか?
- httpdはどの(Linux)ユーザーの権限で動くのか? CGIも同じか?
- MySQL (MediaWikiを動かすならば必要)
- パッケージmysqlに加えて、mysql-serverのインストール
- データベース名、データベースユーザー名(MySQL内の名前) いずれもwikidbでよいか。
- 実際のデータベース作成
- login
- mysqlを動かす権限をもつユーザーになる。rootか?
- mysqlを起動 /usr/bin/safe_mysqld か? mysql-serverのインストール後確認。
- mysql内のユーザーrootとwikidbを作成
- mysqlの中で
- データベース作成 create database wikidb
- データベース変更権限を与える grant create,... on wikidb.* to wikidb@localhost ...
- 今後、OSを再起動した際にmysqlを起動するしかけをする
- wikiの内容(PHPスクリプトを含むディレクトリ)をサーバー上のどこに置くか。/var/www/html/wiki か?
- 運用に関するいくつかの検討 某サーバーでの運用方針案
- 著作権関係
- サイト標準の著作権(というよりも再配布ライセンス)を設定したほうがよさそう。Creative Commons準拠( http://www.creativecommons.jp/apply/ )参照がよいと思う。(WikipediaはGNUとCreative Commonsの二重ライセンスだが)。
- 既存の出版物を流用する場合は個々に確認する必要がある。
Wikiページ作成 2009-09-24, 最新更新2009-11-06
HTMLページ作成 2015-10-19
増田 耕一 (MASUDA Kooiti)
[個人Wikiにあった文書の一覧へ]
[増田のホームページへ]