- HOME
- サーバー構築サービス
- PHPのインストール
PHPのインストール
Unixと同じく、Windows版ApacheにもPHPモジュールを組み込むことで、ブラウザ上でPHPスクリプトを実行させることができる。基本的な機能はUnix版とほとんど変わりなく、クライアントからはそれほど意識することなくPHPとして実行できる。またUnixでは、GDやPDFlibなどの拡張ライブラリは手動でコンパイル・インストールする必要があるが、Windowsの場合たいていのものはPHPのアーカイブ内に含まれているので、設定ファイルを変更すればそのモジュールを使用することができる。うまく動かない場合はそのライブラリに必要なDLLをSystemRootなどのパスの通った場所にコピーすることで使えることもある。インストールはUnixと比べて楽なので試してみるとよいだろう。
なおApacheをSSLつきでインストールした場合、PHPはEAPI対応でないとうまく動かない場合があるので、その場合はEAPI対応のDLLをインストールする必要がある。
1)PHPのインストールの前に、Apacheが起動していたら停止させる。
C> \apache\apache -k stopサービスに登録されている場合はnetコマンドでも可。
C> net stop apache2)PHPのアーカイブを解凍し、必要に応じてディレクトリ名を変更する。解凍後、「php.ini-dist」ファイルをWindowsの%SystemRoot%にコピーする。ここでは「C:\PHP4」にインストールし、設定ファイルを「C:\WINDOWS\php.ini」としてコピーする。
3)「php4ts.dll」を「%SystemRoot%\System32」に、また「sapi\php4apache.dll」をApacheの「modules」ディレクトリ下にそれぞれコピーする。php4ts.dllをコピーしないとphp4apache.dllが正しく読み込めない。コピーする場所はApacheのインストールディレクトリ下でもよいが、IISなど他のWebサーバでも使う場合はパスの通ったところに置くほうがよい。また、php4apache.dllはEAPIに対応していないため、EAPI対応のDLLが必要なら別途ダウンロードが必要。
4)Apacheのhttpd.confを修正する。基本的にはUnix版と同じように修正すればよい。
LoadModule php4_module modules/php4apache.dllAddModule mod_php4.c
DirectoryIndex index.php index.phtml
<IfModule mod_php4.c>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>
5)拡張モジュールを使用するには、%SystemRoot%にコピーしたphp.iniの内容を変更する。まずモジュールの入っているディレクトリを指定し、その後以下のように使うモジュールをコメントアウトし、逆に使わないものはコメントする。
extension_dir = C:/PHP4/extensionsextension=php_gd.dll
extension=php_mbstring.dll
extension=php_ming.dll
extension=php_openssl.dll
extension=php_sockets.dll
extension=php_zlib.dll
CGI版PHPを利用する場合は、cgi.force_redirectの値を0に設定(コメントをはずすのを忘れないこと)しておかないと「Security Alert!」画面が出て実行できないので、変更する。
(注:PHP-4.1.2ではCGI版PHPを実行すると、ブラウザ上部にシェルエスケープ行が表示されてしまうので、回避したい場合は新しいバージョンをインストールしたほうがよい。)
6)Apacheを起動し、起動時に「PHP/4.1.2」という表示がでることを確認し、ブラウザで正常に動作していることを確認する。
C> \apache\apache -k startPDFlib
WindowsのPHPでPDF関数を扱う場合、PDFlibのモジュールを組み込む必要がある。ただWindowsのPDFlibはライセンスの問題で、PDFファイルを作成すると「www.pdflib.com」というデモスタンプが印字されてしまう。これを消すためにはライセンスを購入するか、ソースからコンパイルしてインストール(Unix)する必要がある。(付属のDLLなら問題ない)
1)php.iniファイルに、以下の行を追加する(コメントをはずす)。
extension=php_pdf.dll2)PHPのインストールディレクトリ以下の「dlls\pdflib.dll」を、SystemRootなどのパスの通ったディレクトリへコピーする(Apache.exeやモジュールと同じ場所でもよいが、コマンドライン版PHPを使った場合DLLの場所を見つけられず警告メッセージが出てしまう)。
3)環境変数PDFLIBRESOURCEに、PHPのインストールディレクトリ以下の「pdf-related\pdflib.upr」ファイルまでの絶対パスを設定する。WindowsNT系ならシステムのプロパティの「詳細設定」「環境変数」で設定。Win9x系なら「C:\AUTOEXEC.BAT」に以下のように記述する。
set PDFLIBRESOURCE=C:\PHP\pdf-related\pdflib.upr4)pdf-related以下のpdflib.uprファイルを編集する。
/C:/PHP4/pdf-related%Mistral==c:/psfonts/pfm/mist____.pfm
5)Apacheを再起動し、動作確認を行う。
C> apache -k start■PHPの動作確認
(PHPの動作状況がブラウザに出力される)
■CGI版PHPの動作確認
(CGIが実行できるディレクトリに置いて適切なパーミッションを設定する)
■GDの動作確認
(gdおよびpngライブラリを有効にした場合)
■PDFの動作確認
(pdflibを有効にした場合)
■FLASHの動作確認
(mingを有効にした場合)