WindowsにPHPをインストールする

提供:MoodleDocs
移動先:案内検索

PHPファイルの選択

Moodleは最低でもPHPv5.3.3で動作しますが、これはRedhat、CentOS、DebianまたはUbuntuのようなベンダによって活発にメンテナンスされているLinuxディストリビューションを対象としています。Windowsの場合、常に 最新の安定版PHPをhttp://windows.php.net/download/ からインストールしてください!

最新版の PHP をダウンロードするには、msi ではなく ZIP ファイルを使用します。ZIPファイルは、我々の目的には、すべてのWindowsのインストールで使用するためにかなり簡単で信頼性が高いです。

PHPのインストール

ダウンロードおよび解凍

ダウンロードしたら、Windowsのエクスプローラを開き、右クリックで解凍先のパス、例えば G: \php に解凍してください。Apacheサーバは G:\ にあればいいので、PHPも同じドライブに入れています。しかし、Apacheサーバ、PHP、MySQLのインストールをすべて同じドライブに置くことは、多くのインストールで理にかなっています。セキュリティ、アクセス、負荷分散、その他の様々な問題により、異なる構成が発生する可能性がありますが、最も基本的なインストールでは、PHPはサーバと同じドライブに置くことができます。

Windowsエクスプローラのまま、G:\phpフォルダを開くと、php.ini-recommended というファイルが表示されます。このファイルをコピーして貼り付けるか、名前を php.ini に変更します。このファイルには、あなたのコンピュータでPHPを動作させるための必須ディレクティブが含まれています。しかし、Moodleで動作させるためには、このファイルと他の2つのファイルを設定する必要があります。

設定

環境変数の編集

まず、PHPがApacheで使用できるようにするために必要な環境変数を設定します。

Windowsのすべてのバージョンにおいて:

マイコンピュータのアイコンを右クリックし、プロパティダイアログを開きます。

"詳細設定" または "システム変数の詳細" から "環境変数" を選択し、"システム変数" セクションで "パス" を選択して編集ボタンをクリックします。

パス文の最後に、";G:\p;G:php\ext" というテキストを追加します。最初の文字はセミコロンです。これはセパレータで、パス文の異なる部分を区切ります。パス・ステートメントには空白はありません。私は、PHPサーバと拡張ファイルのパスを使用しています。パス文にPHPを含めないと、ApacheはPHPを見つけることができず、使用することができません。OKをクリックしてファイルを保存します。マイコンピュータプロパティダイアログを閉じ、終了します。

次に、PHPをMoodleに適合するように設定、または微調整する必要があります。ここで必要なことはいくつかありますが、順番に試していきます。

php.iniファイルの編集

php.ini ファイルを下にスクロールすると、テキストエディタの左側に行番号が表示されるはずです。(もしそうでなければ、通常は編集プログラムの画面の下にあるステータスバーが、挿入ポイントであるカーソルが実際にどこにあるのかを示します)。

300行目について、次のような行があるはずです。max_execution_time = 30 とあります。これを max_execution_time = 180 に変更します。 この変数は、何かが見つからない、あるいは何かが動作していないことを報告するまでに経過すべき時間を決定するものです。これは秒単位であり、もしスクリプトが3分以内に実行できない場合は、実行できない可能性があり、したがって問題がある可能性があります。

次の行、leave memory limit の128Mをリセットしないでください。

490行目あたりまでスクロールすると、次のようになります。post_max_size = 2Mとあります。 これを post_max_size = 512M に変更すると、後でMoodleにアップロードするときに違いが出てきます。

538行目について、doc_root =' と書かれているはずです。doc_root = "G:\ServerApache</htdocs"(またはアクティブなWebフォルダのパス)を読み取るように変更します。

542行目あたりで、'extension_dir = "./" と書かれていますが、extension_dir = "G:\php\ext" に変更します。 (これは私の環境変数での表示方法です。ご自分のパスを使用してください)

600行目あたりに upload_max_filesize = 2M という文字がありますが、これを upload_max_filesize = 512M に変更します。

post_max_sizeとupload_max_filesizeを設定することで、あなたのMoodleにアップロードファイルサイズを設定することができるようになります。これは、あなたのMoodleのアップロードファイルサイズに、約10KBから512MBまでの範囲のオプションが表示されることを意味します。

この時点で、あなたはMoodleで動作するための環境を設定しました。

635行目あたりから、次のテキストが表示されます。

 ;;;;;;;;;;;;;;;;;;;;;;
 ; Dynamic Extensions ;
 ;;;;;;;;;;;;;;;;;;;;;; 

これまで "ext" と呼んできたのは、こうした拡張機能のことです。これらの拡張機能は、Windows環境で追加機能を提供するツールであるため、重要です。

もし行が ;extension = で始まっていたら、つまりセミコロンが "extension" という単語の前にあったら、それはこの拡張機能がコメントアウトされている、つまり非アクティブであることを意味します。 必要な拡張機能を有効にするには、単にセミコロンを削除すればいいのです。 もしあれば、これらの行からセミコロンを削除してください。

 extension=php_curl.dll
 extension=php_exif.dll
 extension=php_gd2.dll
 extension=php_gettext.dll
 extension=php_imap.dll
 extension=php_ldap.dll
 extension=php_mbstring.dll
 extension=php_mcrypt.dll
 extension=php_mime_magic.dll
 extension=php_ming.dll
 extension=php_mssql.dll
 extension=php_mysql.dll
 extension=php_mysqli.dll
 extension=php_openssl.dll
 extension=php_pdf.dll
 extension=php_pdo.dll
 extension=php_pdo_mssql.dll
 extension=php_pdo_mysql.dll
 extension=php_sockets.dll
 extension=php_sqlite.dll
 extension=php_xmlrpc.dll
 extension=php_xsl.dll
 extension=php_zip.dll

ldapエクステンションのように、必要ないものもありますが、とりあえず入れておきましょう。

保存して閉じる を実行します。

PHPとApacheの設定

これが終わったら、Apache が PHP にアクセスできるだけでなく、PHP を使用できることを確認する必要があります。

テキストエディタを使って、..\Apache\conf\httpd.conf ファイルを開いてください。

開いたら、LoadModule というテキストを検索してください(注: LoadModuleは1単語です)。これは58行目くらいにあるはずです。

Apache の設定ファイルでは、# キーをコメントマーカとして使用します。追加または編集された行は、その先頭に # マーカがあってはいけません。

61行目あたりに、 LoadModule php5_module "G:/php/php5apache2_2.dll" というテキストを追加してください。(独自のパスを使用してください) それ以降のバージョンの Apache では、PHP の拡張子番号が php5apache2_3.dll のようになることがあります。(これは執筆時点のものです)。

240行目あたりに、次のような文章があります。

 <IfModule dir_module>
    DirectoryIndex index.php index.php4 index.php3 index.cgi index.pl index.html index.htm index.shtml index.phtml
    #  DirectoryIndex index.html index.htm index.shtml
 </IfModule>

次に、TypesConfig conf/mime.types という行を見つける必要があります。 その少し下にAddTypeステートメントがあります。さらに少し下にスクロールして、385行目あたりで、次の行を追加してください。

 AddType application/x-httpd-php .php

その10行ほど下に #AddHandler cgi-script .cgi とあるので、その行を残して、次の行に次のように追加します。

 AddHandler application/x-httpd-php .php 
XPの場合
ファイルの一番最後に 'PHPIniDIR "G:\php" という行を追加してください。あなたのパスを除いて、ここにあるのと全く同じです。
VistaとWindows 7の場合
ファイルの一番最初に PHPIniDIR "G:\php" という行を追加してください。あなたのパスを除いて、ここにあるのと全く同じです。

Apache のドキュメントでは、このステートメントを追加することに言及していますが、どこに入れるべきかは指定されていません。なぜか、ここで説明されているように動作します。

ファイルを保存して閉じます。

最初のテストとリスタート

cmdウィンドウを開き、php -vと入力すると、使用しているPHPのバージョンが表示されます。例えば、extension = hp_pdf.dllファイル のコメントを外したのに、そのファイルがない場合もありますので、Webで検索してダウンロードしてください。zipの場合は、それを解凍してextフォルダに入れます。

WindowsはWindowsで、phpサーバがApacheサーバに正しく組み込まれたことを確認するために、この時点で再起動が必要です。(このステップはWindows 7では必要ないかもしれませんが、XPとVistaでは必要です)。

再起動すると、Apacheのアイコンは緑の矢印を表示しているはずです。

具体的なPHPのテスト

テキスト編集ソフトを開きます。

新しいファイルを作成し、次のテキストを入力します。

 <?php 
      phpinfo(); 
 ?>

php.inihttpd.conf ファイルで指定したように、ドキュメントルートフォルダに info.php などの名前で保存します。

ブラウザを開いて "http://localhost/info.php" に照準を合わせると、右の画像のようなものが表示されるはずです。

PHP Info file

ファイルを正しい場所に保存し、phpを正しくインストールし、Apache httpd.confファイルのDirectoryIndexを正しく編集したならば、PHP設定ファイルが表示されるはずです。それをスクロールしていくと、PHPに関するすべての情報を含む一連のテーブルが表示されるはずです。

ファイルが正しく表示されない場合、例えば、最初は適切にテーブル化され、見出しがありますが、いくつかのテーブルでは、php.iniファイルを読み取るだけです。httpd.confファイルは正しく編集されていますが、php.iniファイルは全く正しくありません。上の説明に戻って、あなたが行ったことと照らし合わせてみてください。もう少しで、PHPは完全に正しく動作するようになりますが、 コロンが必要なところにセミコロンがあるかもしれません。それは単純なことで、簡単に見落とされるものです。

この時点で、ApacheとPHPのインストールが完了しましたので、次はWindowsにMySQLをインストールするです。

See Also