Manual:Newcomers guide to installing on Windows/ja

MediaWikiをLinuxとUnix上にインストールすることは相対的に率直です. Windows上にインストールすることはそれらよりも複雑です.
 * パッケージの中にはWindowsにはあまり適していなかったり、特別なコンパイレーションが必要なことがあります.
 * モジュールの中には手引きが明快ではないものがあります
 * 適切なバージョンは常に明確とは限りません
 * Windows上でエラーメッセージはトレースするのがLinuxやUnixよりも難しい.

次の内容はキーコンフィグファイルと詳細をいくつか含むWindowsインストレーションの要約です.

警告
無邪気なタイトルにかかわらず、このページは'''一部の人の大して最適ではありません. '''むしろシステムアドミニストレータが最初にWindows上でインストールするためのガイドです. 一般的なWindowsユーザーには難しい内容です. Apache、PHP、MySQLとWindows内部の知識を前提としています. 基本的な3つのパッケージがバージョンが古いなど'''多くの情報が時代遅れになっています. '''

Heck, schmeck... I've got 20 years experience, and I'm finding myself lost. Make sure you understand it all before getting started.

できればWindows XP SP2、Apache 2.2.2とPHP 5.1.3上でMediaWiki1.6.5をインストールするためにはManual:Streamlined Windows Install Guide/jaをご覧頂けることを願っております. 率直で、特にねじれたものがなく、デフォルトからの逸脱がありませんのでうまくいきます.

MediaWikiをあなたのPC上にインストールするとてもシンプルなインストレーション (XAMPPを利用)

 * XAMPPをダウンロードしてインストールします : http://www.apachefriends.org (ダウンロードされたリンク)
 * XAMPPのコントロールパネルアプリケーションからApache(ウェブサーバ)とMySQL (データベース)を起動させます
 * ウェブブラウザを立ち上げ http://localhost に移動します(自動的に http://localhost/xampp/ に転送されます)
 * Securityリンクをクリックします
 * セキュリティを設定するために、 http://localhost/security/xamppsecurity.php リンクをクリックします
 * MYSQLパスワードとXAMPPのユーザー名とパスワードを選択します ("xampp user"のユーザー名とパスワードが求められたときに、あなたが選択したユーザー名とパスワードを入力して下さい)
 * phpMyAdminリンクをクリックします. MYSQLパスワードを入力します (以前入力したもの).
 * 新しいデータベースを作成します. 例えばwikidbなど
 * MediaWikiをダウンロードします : Download
 * 2回解凍する必要があります. Windowsではデフォルトではgzとtarの拡張子に対する解凍ツールがないので、7-zipをダウンロードします : http://www.7-zip.org/
 * Mediawiki-X.XフォルダをC:\Program Files\xampp\htdocs内部に設置します(X.XはMediaWikiのリビジョンです. )(ここでは既にxamppといった他のフォルダがあります)
 * Mediawiki-X.Xフォルダをwikiにリネームします(もしくは選択した他の名前)
 *  http://localhost/wiki に移動します. 微笑んでいるwikiが見えます.
 * 続けて必要ならさらなるヘルプを見つけて下さい.
 * 終わりました

標準的なインストレーションのために利用されるソフトウェア

 * Windows 2000 or XP or 2003
 * Apache v2.x (2.0.52でテスト)
 * MySQL v4.0.x (4.0.21でテスト)
 * PHP v5 (5.0.1でテストされましたがWindows Serverでは動作しませんでした - 代わりに4.3.8にしました)
 * phpMyAdmin、MySQLの監視と管理をするために利用されます (2.6.0-pl3でテストされました)
 * Webalizer, Apacheのページ提供とサーバ上のwikiの要求を監視するために利用されます.
 * Zend Optimizer、より効果的にwikiを稼働させるために利用されます(v2.5.7、Zend社から無料で入手出来ます)
 * Memcache (PHP 5.0.1、Windows用にコンパイル) (but you can also use Turck MMCache)
 * ImageMagick (v5.5.7でテストされました. v6+に対するサポートは"まだ実験段階です")


 * MediaWiki (1.4 beta 3でテストされました)

MySQL
MySQL4.1に関して4.0とは対照的にメモリの警告を受けましたが、これらは時代遅れもしくは些細な問題かもしれません. これら重要であるかどうかアドバイスする必要がある人が中にはいるかもしれません.

PHP4とMySQL 4.1を利用する場合、新しいMySQLの認証方法が原因のトラブルに遭遇するかもしれません.

Memcache
MemcacheはコンパイルされたPHPコードの結果をキャッシュすることで数百回倍PHPを加速することが出来ます. 動作するのであればMediaWikiと一緒に使うことをお勧めします.

でPECLアーカイブからWindowsをダウンロードすることが出来ます. インストールするライブラリと同じPHPバージョンを動かさなければならないことに注意して下さい. php_memcache.dllをエクステンションディレクトリに抜き出してextension=php_memcache.dllの行をphp.iniに追加してください.

ImageMagick
これによってMediaWikiが画像に関するマジックを実行できるようになります.

注: ImageMagick 6.2.3はWindows用のインストーラがあります.

Windowsインストーラを使用して完全で優しいインストラクションのセットのためにWindows上のImageMagickに関するFAQのエントリをご覧下さい
 * ImageMagick-6.2.5-0-Q16-windows-dll.exeでテストしました - インストーラでALLデフォルトを取ります.
 * LocalSetting.phpで指定することですべての変更をします
 * php.iniで変更は必要ありません
 * ディレクトリパスにスペースが入ることは気にしないで下さい. "convert"を指定すればいいのです. インストーラはWindowsのパスを考慮します
 * php_imagick.dllは気にしないで下さい. インストーラを利用するときは必要ありません
 * MediaWikiのバージョン1.4.10でテストしました

上記の設定で動作しない場合もしくはImageMagickのWindowsインストーラを利用できない場合、次の方法を試して下さい: インストーラを実行した後、必要なことはLocalSettings.phpで関連した設定を次のように更新することです: でImageMagickインストレーションへのパスを置き換えます(フォワードスラッシュを使い、スペースを含むパス上にインストールしないことを覚えておいて下さい. インストーラのデフォルトのパスはC:\Program Files\ImageMagickなので変更する必要があります).
 * PHPが適切にインストールされているのであれば、MediaWikiでImageMagickを利用するためにActiveState Perl用のPerlMagickをインストールする必要はありません(インストーラの説明でアドバイスされます).
 * ウィザードの "Select Additional Tasks"ページに到達したときに"Update executable search path"オプションが選択されていることを確認して下さい.
 * 恐らく、スペースを含むディレクトリパスにImageMagickをインストールした場合MediaWikiはImageMagickを見つけられません.

次のインストラクションはWindowsインストーラを利用していない場合に当てはまります:

情報の欠如によって、何が必要でであるのか理解するのに苦労しました. 私が見つけたのは次の通りです: このことに関する公式のソースはImageMagick v6+用の実験的なサポートなので、不確実であるならバージョン5.xを継続する方がよいかもしれません. ImageMagickをインストールする方法を説明しているLocalFoo(Saint WAMP [TSW]の一部)上でページがあります. 私が知る限り、唯一の良い説明です.
 * バージョン6.0以前と6+とで異なる問題が存在する
 * 必要ならImageMagickに加えて、通常はphp_imagick.dllと呼ばれるPHPエクステンションにアクセスできるようにします. このあたりに複数のバージョンが存在します.

(私が考えるに！)全体的では、すべての画像処理のDLLのためのフォルダが必要で、それらのリンクはPATHに追加され、PHPがMediaWikiの範囲内でこれらを内部で利用するためにphp_imagick.dllはPHPエクステンションとして追加されなければなりません. (訳注：ImageMagickは直接コマンドを操作しているのでphp_imagick.dllはまったく使われていません)

上記のページで詳細な情報が提供されています.


 * ImageMagickインストーラで"Install ImageMagickObject OLE Control for VBsc ript, Visual Basic and WSH"というボックスをクリックしなければならないことに注意して下さい. これをするまで限りなくイライラしました. Win2k上でEasyPHPを利用しています.

MediaWiki
現在のバージョンのセットアップモジュールに明らかなバグが存在します. MediaWikiを起動させて最初に起こることは、wikiをセットアップするか尋ねられ、いくつかの基本情報を受け入れ、セットアップし、LocalSettings.phpファイルを生成し、成功をレポートします.

バージョン1.39はファイルを作成せず、空白ページを表示しました. バージョン1.4ベータでは正しく動作しました.

MediaWikiはMySQL管理者アカウントが"root"と呼ばれることを前提としていることに注意して下さい. そうではない場合、wikiをセットアップするために一時的に有効にする必要があります(MediaWiki 1.5.8では、管理者名を独自に設定することが出来ます).

インストレーション 1
Apache、MySQLとPHPを最初にセットアップし、それから他の機能を追加します.

Apache2

単調直入です. サーバもしくはドメインを知っていなくても、MY_SERVER and MY_DOMAINを入力すればよいです、後でhttp.confを編集することが出来ます. サービスとしてインストールします. それでお終いです.

MySQL

これも単刀直入です.

PHP5

インストール方法はzipバイナリバージョンか.exeインストーラバージョンの2つの選択肢があります. フォルダの選択をして保存して下さい. それから選択されたファイルが必要なだけです.

特別なフォルダ
特別なフォルダが含まれます:
 * 1) ウェブページを提供するために、ルートとして利用するApacheのためのドキュメントフォルダです. デフォルトのものを利用したくない場合一つ作成して下さい.
 * 2) MySQLのために、データフォルダと一時フォルダです. それらを望む場所に設置して下さい. mysqlフォルダの位置を変更する場合デフォルトの位置からコピーしなければなりません. さもなければMySQLは起動することは出来ません.
 * 3) phpMyAdminと'MediaWiki'のために:  両方ともPHPスクリプトです. Apacheに関しては、ウェブページを配信する以外ありません. ウェブサーバフォルダで2つのフォルダが欲しい場合、一つは"\phpmyadmin"と呼ばれ、もう一つは"\wikiname"と呼ばれます(wikiのために、\wiki2もしくは\mywikiといったショートネームです). phpmyadminコード全体を最初のものに投入し、Mediawikiコード全体を2番目のものに投入するだけです.
 * 4) Memcacheのためにフォルダを作成して下さい. 一時ファイルのために利用されます.

phpMyAdminはインストーレションルーチン無しでダウンロードして展開しますので、一旦ダウンロードして選択した位置のマスターコピーに展開すると(例えばC:\Install\phpmyadmin-install\...)、全体の内容をC:\yourwebroot\phpmyadmin\*.*にコピーしてブラウザから設定します. 設定をするために.../phpmyadmin/index.php -ローカルマシンではおそらく- http://localhost/phpmyadmin/index.php にアクセスすることになります. http://www.wikihow.com/Install-phpMyAdmin-on-Your-Windows-PC などもご覧下さい.

構成
構成は複雑でやっかいです. ですのでこれは概要です. バージョンを示すために、コンフィグの作業コピーは下記に表示されます.

ファイルとパス名
これらのプログラムは最初はUnixとLinuxのために開発されたことに注意して下さい. たいていの場合、Windowsのファイル名は\ではなく/を入力しなければなりません. これはありふれた問題です. 例えば、コンフィグファイルの中ではファイルへの行はC:\PHPではなくC:/PHP not C:\PHPになります.


 * Windows上では、ApacheとMySQLはパスのために\のかわりに/を使用します.
 * PHP.INIは\を使用します (下記の注をご覧下さい)

これらのプログラムのすべてはファイル名でスペースを取り扱うことが出来ますが、構成ファイルもしくはコマンドラインで利用するときはそれらの周囲に引用符を使うことを忘れないで下さい. 次のようなものになります:.


 * もしくは少なくともクロスプラットフォームのパッケージをインストールするときはいつでもWindows上では常にフォワードスラッシュを使用することが望ましいです. Windows自身簡単にそれらのフォワードスラッシュを利用出来ます. 何らかの理由で、パスが内部で次のようなものを探す場合:  Windowsはこれを暗黙の内に訂正します.

正しい位置に移動させる必要のあるファイル
コンフィグファイルは変数の置き場所です. 最終的にはphp.iniとmy.ini (MySQL)をC:\WINDOWSシステムフォルダに設置しました. apacheが設置されている場所にあるapache http.confファイルはそのままです. Apache2ではPATHシステムを調整する、もしくは他の方法でPhpinidirディレクティブでこれらを調整することが出来ます. 最終的にはこれが一番ベストで簡単に動作しました.


 * 読者からの注: There is no file called my.ini in the latest version of MySql (5.0.25) and in PHP the nearest probable files are called php.ini-recommended and php.ini-dist, and you are apparently supposed to rename them php.ini. Novices and even intermediate computer users like myself really need stupidly-clear (!) instructions for these types of procedures, because we really don't understand the software. So if someone knows how to correct this, it would be greatly appreciated!


 * Response to reader: php.ini-recommended and php.ini-dist are two files that do the same thing but with different settings. The makers added the -recommended and the -dist to make sure that the files don't confuse each other, so neither of them work when they have that suffix. The one with -recommended at the end is the one that is recommended (go figure) and the other one is for more advanced users I guess. So just take the suffix off of the one you want, making it php.ini and that should activate the file. Hope that helps.

移動させるもしくはコピーする必要のあるファイルは次の通りです:


 * PHP CONFIG - php.iniをC:\WINDOWSに. "recommended"で始まるiniのバージョンは、PHPフォルダで見つかります.
 * PHP EXECUTABLES - 同様に次のファイルをC:\WINDOWSに移動させて下さい: libmysql.dll, php5ts.dll, php.exe, php_mysql.dll(ext). 2つのMYSQLファイルはMySQLの機能に必要で、PHP5TSはメインのPHP実行ファイルで、PHP.EXEはコマンドラインを実行するために必要です. 使う予定のその他のPHPのエクステンションは同じフォルダに設置します.
 * MEMCACHE.DLL - 見つかる場合は他のPHPエクステンションと同様にmmcache.dllをC:\WINDOWSに設置します.
 * MYSQL CONFIG - my.iniファイルの一つを取り出し、C:\WINDOWSに設置します. いくつあり、異なることはどのくらいサーバがパワフルでどのくらいのリソースをMySQLに提供できるかです. それらすべてはそれとは別に大抵は同じです.
 * APACHE CONFIG - http.confでApache2\confにあります. そのままにして下さい.

注: PHP5はPHPディレクトリツリーにあるphp.iniファイルとすべてのdllsをそのままにして、PATH環境変数とPHPIniDirディレクティブでApache2と統合することを推奨します. そうする場合、必要なことはlibmysql.dllとphp_mysql.dllをC:\WINDOWSではなくApache2のrootディレクトリ(デフォルトではC:\Program Files\Apache Group\Apache2)にコピーすることです. PHP5はMySQLサポートが有効になっていることを告げていますが、php.iniでphp_mysql.dllをアンコメントする必要があります.

コンフィグファイルを編集するとき、これらのプログラムの大抵はコンフィグファイルの内容に関してとてもごっちゃごっちゃになっています. 編集をするまえに'''常にバックアップを保存して下さい. '''エラーになった場合に以前のバージョンに戻す必要がある場合に役立ちます. それでも不安でしたら、システムの復元ポイントを取って下さい. そして何をしたのか忘れるぐらい一度にたくさんの内容を変更しないで下さい.

MySQLのセットアップ
.msiからMySQLをインストールする構成ウィザードを利用する場合、言語設定をデフォルトの"Latin1"に設定しておいて下さい. "utf8"を選択する場合、初期のセットアップをするときにMediaWikiは次のエラーに遭遇します: Creating categorylinks table...Query "CREATE TABLE categorylinks ( cl_from int(8) unsigned NOT NULL default '0', cl_to  varchar(255) binary NOT NULL default , cl_sortkey varchar(255) binary NOT NULL default , cl_timestamp timestamp NOT NULL, UNIQUE KEY  cl_from(cl_from,cl_to), KEY cl_sortkey(cl_to,cl_sortkey(128)), KEY cl_timestamp (cl_to,cl_timestamp) )" failed with error code "Specified key was too long; max key length is 1024 bytes".

このエラーに遭遇してMySQLサーバのためにデフォルトのキャラクタセットを変更したくない場合、MediaWikiインストレーションが作成したデータベースからすべてのテーブルを削除してデフォルトのキャラクタセットをLatin1に設定して下さい(MySQLクエリ: "ALTER DATABASE `wikidb` DEFAULT CHARACTER SET latin1 COLLATE latin1_general_ci"、phpMyAdminといったMySQLアドミニストレーションフロントエンドなどを利用することができます)、それからMWインストレーションを再び実行して下さい. bug 2907もご覧下さい.

MySQLバージョン4.1で動作させる場合、PHPがMySQLサーバに接続できるように'old-passwords'オプションを有効にしなければなりません(詳細についてはMySQL Documentationをご覧下さい). おそらくそれを行うベストな場所はMySQL構成ファイルです('my.ini'はMySQL Programフォルダで見つかります). my.iniの[mysqld]セクションで次の行を追加して下さい: old-passwords 変更をロードさせるためにMySQLサービスを再起動させて下さい.

MySQLをテストする
次にコマンドプロンプトを開きます. 幸いにも、NET START MYSQLとNET STOP MYSQLはそれぞれサービスの起動と停止を行います. エラーを得る場合、編集、パスとファイルを注意深く見て下さい.

Apacheのセットアップ
必要なことはhttpd.confを編集することです. デフォルトの位置は次の通りです: C:\Program Files\Apache Software Foundation\Apache2.2\httpd.conf

主要なタスク: ServerRoot "C:/Program Files/Apache Group/Apache2"
 * ApacheにServerRootで始まるようhttpd.confで見つかるサービスドキュメントがどこにあるのか伝えます. 必要なら変更します.
 * PHPにアクセスするモジュールを追加します("php5apache2.dll")
 * apacheモニタリングを有効にします
 * PHPIniDirを設定します (php.iniをC:\Windowsに設置しない場合)
 * サーバとドメインIDを追加する(インストールの間に追加していなくて追加が必要な場合)
 * index.phpと呼ばれるファイルとHTMLといった他のドキュメントを提供するようにApacheに命令する
 * apacheが自身に関して外に出す情報を制限する
 * エイリアスをセットアップする(eg MYDOMAIN/wiki --> your wiki folder)
 * パーミッションをセットアップする(異なるフォルダでコードにアクセスして実行できる)
 * モニタリングと情報の閲覧を許可するウェブページサービスをセットアップする
 * その他 - 望むのであれば説明、圧縮処理、サーバサイドの画像、ローカライゼーションなど

下記の稼働しているhttp.confの例をご覧下さい.

Apacheをテストする
ApacheはPHPをモジュールとして読み込むことに注意して下さい. 我々はPHPをまだ設定もしくはテストしていません. ですので今はLoadModule php5_module "C:/Program Files/Php/php5apache2.dll"をコメントアウトして下さい.

次にコマンドプロンプトを開いて下さい. 幸運にもNET START APACHE2とNET STOP APACHE2のコマンドでサービスの起動と停止を設定することが出来ます. ApacheではなくApache2であることに注意して下さい. エラーを得る場合、編集、パスやファイルを注意深く見て下さい.

注: Apache2.2を利用している場合、http://snaps.php.net/ からPHP5.2 devビルドをダウンロードしなければなりません. さもなければ上記の行をhttpd.confに追加するときに見つからないもしくはアクセスが拒否されるというエラーを取得します. PHP5.2とApache2.2ではPHPIniDir行は使いません.

ファイヤーウォールとWindowsの問題
Apacheはポート80を利用しMySQLはポート3306を利用します. MySQLとApacheを外部からアクセスできないようにしたいかもしれません. そのためにはこれらのパラメータに関するファイヤーウォールを開かなければなりません. 幸運を祈ります - 時間はかかりましたが、動作を確認しました！

サンプルのコンフィグファイル
これらはサンプルのみで、コマンドとディレクティブがどのように使われているのかを確認することが出来ます.

Apacheのサンプルのhttpd.conf
このセクションの内容はサブ記事で見つかります: Manual:Newcomers guide to installing on Windows/Apache httpd.conv. [mysqld] basedir=D:/mysql datadir=D:/mysql/data [WinMySQLadmin] Server=D:/mysql/bin/mysqld-nt.exe user=siamcafe password=86I[v,
 * 1) bind-address=203.146.249.152
 * 1) language=D:/mysql/share/your language directory
 * 2) slow query log#=
 * 3) tmpdir#=
 * 4) port=3306
 * 5) set-variable=key_buffer=16M

max_connections = 500 key_buffer = 16M myisam_sort_buffer_size = 64M join_buffer_size = 1M read_buffer_size = 1M sort_buffer_size = 2M table_cache = 1024 thread_cache_size = 64 wait_timeout = 1800 connect_timeout = 10 max_allowed_packet = 16M max_connect_errors = 10 query_cache_limit = 1M query_cache_size = 32M query_cache_type = 1 skip-innodb [mysqld_safe] open_files_limit = 8192 [mysqldump] quick max_allowed_packet = 16M

[myisamchk] key_buffer = 64M sort_buffer = 64M read_buffer = 16M write_buffer = 16M

PHPのサンプルのphp.ini
このセクションの内容はサブ記事の位置で見つかります: Manual:Newcomers guide to installing on Windows/PHP php.ini