このインストールガイドは、Windows 9x/NT 上の Web サーバー 用に PHP をインストールし、設定する手助けとなるものです。 このガイドは、Bob Silva によりまとめられたものです。 最新版は、http://www.umesd.k12.or.us/php/win32install.html にて 手に入れることができます。
このガイドは、以下の Web サーバーへのインストールを サポートしています。
Personal Web Server (最新版が推奨されます)
Internet Information Server 3 または 4
Apache 1.3.x
Omni HTTPd 2.0b1
以下の手順は、個々のサーバーに関する手順の前に行う 全てのインストールに共通する必須のものです。
配布ファイルを好きなディレクトリに展開して下さい。 "C:\PHP3\" が、良い例です。
'php3.ini-dist' を '%WINDOWS%' ディレクトリにコピーし、 'php3.ini' にリネームして下さい。 '%WINDOWS%' ディレクトリは、通常、次のようになります。
Windows 95/98 では、c:\windows |
NT サーバーでは、c:\winnt または c:\winnt40 |
'configuration.file' ファイルを編集して下さい。
'extension_dir' の設定値を php-install-dir または 'php3_*.dll' を 置いた場所に変更する必要があります。 例えば、c:\php3 になります。
Omni Httpd を使用している場合、次の手順には 従わないで下さい。 'doc_root' に Web サーバーのドキュメントルートを 設定して下さい。 例: c:\apache\htdocs または c:\webroot
PHP 実行開始時にロードしたいモジュールを選択して下さい。 これらのモジュールをロードするためには、'extension=php3_*.dll' の 行からコメントを外します。 いくつかのモジュールは、正常に動作するために追加のライブラリの インストールを必要とします。 PHP FAQ には、 サポート用ライブラリの在り処に関する更に詳細な情報が 記載されています。 スクリプトの中で以下のコマンドにより動的にモジュールを ロードすることもできます。 dl("php_*.dll");
PWS と IIS においては、browscap.ini を次のように指定することが できます。 Windows 95/98 では 'c:\windows\system\inetsrv\browscap.ini' 、 そして NT サーバーでは 'c:\winnt\system32\inetsrv\browscap.ini' PHP における browscap 機能に関する詳細な情報については、 この ミラーサーバー を見て、 "source" ボタンを押して動作を確認下さい。
PHP拡張機能用のDLLには、'php3_'が先頭についています。 PHP拡張機能用ファイルとサポート用ライブラリとを間違えることを 防止します。
これらのサーバーを設定するために推奨される方法は、 配布ファイルに含まれる INI ファイル (php_iis_reg.inf) を 使用する方法です。 このファイルを編集し、拡張機能および PHP インストールディレクトリ を自分用の設定に合わせることが可能です。 さもなくば、以下の手順により、手動でこの設定を行うことも可能です。
警告: これらの手順は、windows レジストリに直接修正します。 エラーを一つでも生じた場合、システムの状態が不安定になる可能性 があります。まずレジストリのバックアップをとることを強く推奨します。 PHP 開発チームは、レジストリが損傷した場合の責任を負いません。
Regedit を実行して下さい。
次の場所に進んでください: HKEY_LOCAL_MACHINE /System /CurrentControlSet /Services /W3Svc /Parameters /ScriptMap.
edit メニューで次のものを選択して下さい: New->String Value.
PHP スクリプトで使用したい拡張子を入力して下さい。 例: .php3
新しい文字列値をダブルクリックし、 php.exe へのパスをデータのフィールドに 入力して下さい。例えば、 c:\php3\php.exe %s %s となります。 '%s %s' は「非常に」重要で、これなしでは PHP は正常に動作しません。
PHP スクリプトに関連付けたい全ての拡張子に関してこれらの手順を 繰り返します。
次に HKEY_CLASSES_ROOT に進んでください。
編集メニューから次のものを選んでください: 新規作成->キー
前のセクションで設定した拡張子をキーに入力して下さい。例: .php3
新規のキーをハイライト表示にし、右側ペーンで、"デフォルト値" を ダブルクリックした後、phpfile を入力して下さい。
各拡張子に関して先のセクションの設定手順を繰り返してください。
ここで他の 新規作成->キー を HKEY_CLASSES_ROOT のもとに作成し、 phpfile と名前を付けます。
新規キー phpfile をハイライト表示し、 右側ペーン上で、"デフォルト値" をダブルクリックし、 PHP スクリプト を入力します。
phpfile キーを右クリックし、 新規作成->キー を選択し、 Shell という名前をつけます。
Shell キーを右クリックし、 新規作成->キー を選択し、 open という名前をつけます。
open キーを右クリックし、 新規作成->キー を選択し、 command という名前をつけます。
新規キー command をハイライト表示し、 右側ペーンにて "デフォルト値" をダブルクリックし、 php.exe へのパスを入力します。例: c:\php3\php.exe -q %1. (%1 を忘れないで下さい。)
Regedit を終了して下さい。
ここまでの作業で、PWS および IIS 3 用の システムインストールは完了します。 IIS 3 ユーザーは、Steven Genusa が作成した スクリプトマップ設定用のすばらしい ツール を使用することができます。
PHP を IIS 4 が稼動している NT サーバーにインストールするには、 以下の手順に従って下さい。
インターネットサービスマネージャー (MMC) にて、 Web サイトまたはアプリケーションのスタート位置となるディレクトリ を選択して下さい。
そのディレクトリのプロパティシートを(右クリックしてから、 プロパティを選択して)オープンし、つづいて、ホームディレクトリ、 仮想ディレクトリ、ディレクトリタブをクリックして下さい。
設定ボタンをクリックし、つづいて、アプリケーションマップタブを クリックして下さい。
追加 (Add)をクリックし、実行ファイル(Executable) ボックスにて 次のように入力して下さい。 c:\path-to-php-dir\php.exe %s %s 最後に %s %s を必ず付けてください。 これがないと PHP が正常に動作しない可能性があります。
拡張子ボックスにて、PHP スクリプトに関連付けたいファイル拡張子 を入力して下さい。 PHP スクリプトに関連付けたい各拡張子 (通常は、.php3 と .phtml です) を設定するために、手順 5 および 6 を繰り返してください。
適当なセキュリティを設定して下さい。 (この作業は、インターネットサービスマネージャで行います。) NT サーバーが NTFS ファイルシステムを使用している場合、 I_USR_ に php.exe があるディレクトリの 実行権限を与えてください。
Apache を PHP CGI バイナリと共に実行可能とするためには、 srm.conf または httpd.conf を変数する必要があります。
Apache 用として使う場合、PHP 設定の選択肢は少ないですが、 始めての人が使う場合でも問題ない程簡単です。 設定用命令に関する詳細は Apache ドキュメントを参照下さい。
ScriptAlias /php3/ "c:/path-to-php-dir/"
AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3 .phtml
Action application/x-httpd-php3 "/php3/php.exe"
ソースコードハイライト機能を使用するには、 PHP スクリプトファイルを作成し、次のようなコードを加えてください。 <?php show_source ("original_php_script.php3"); ?> original_php_script.php3 の部分を ソースを見たいと思うファイルの名前に置き換えてください。 (これがこの機能を使用するための唯一の手段です。) 注意: Win-Apache においては、 "c:\directory\file.ext" のようなパス設定におけるバックスラッシュは、 全てスラッシュに変換する必要があります。
以下のように設定するのが最も簡単です。
手順 1: Omni サーバーをインストールします |
手順 2: システムトレイにある青い OmniHTTPd アイコンを 右クリックし、Propertiesを選択します。 |
手順 3: Web Server Global Settingsをクリックします。 |
手順 4: 'External' タブにて、次のように入力します。 virtual = .php3 | actual = c:\path-to-php-dir\php.exe |
手順 5: Mime タブにて、次のように入力します。 virtual = wwwserver/stdcgi | actual = .php3 |
手順 6: OKをクリックします。 |
PHP と共に実行したい各拡張機能毎に手順 2〜6 を繰り返します。
表 2-1. PHP モジュール
php3_calendar.dll | カレンダー変換関数 |
php3_crypt.dll | Crypt 関数 |
php3_dbase.dll | DBase 関数 |
php3_dbm.dll | Berkely DB2 ライブラリによる GDBM エミュレーション |
php3_filepro.dll | filepro データベースへのアクセス(読込のみ可) |
php3_gd.dll | GIF 加工用 GD ライブラリ関数 |
php3_hyperwave.dll | HyperWave 関数 |
php3_imap4r2.dll | IMAP 4 関数 |
php3_ldap.dll | LDAP 関数 |
php3_msql1.dll | mSQL 1 クライアント |
php3_msql2.dll | mSQL 2 クライアント |
php3_mssql.dll | MSSQL クライアント (MSSQL DBライブラリが必要です) |
php3_mysql.dll | MySQL 関数 |
php3_nsmail.dll | Netscape メール関数 |
php3_oci73.dll | Oracle 関数 |
php3_snmp.dll | SNMP get and walk 関数 (NT のみです!) |
php3_zlib.dll | ZLib 関数 |
国際化関数を有効にすることにより、日本語処理時の漢字コード自動変換機能を 始めとする有用な機能が利用可能になります。
PHP 国際化パッケージは、「PHP3国際化チーム」により現在βテスト中で、 http://www.happysize.co.jp/techie/php-ja-jp/ または ftp://ftp.happysize.co.jp/php-ja-jp/で手に入ります。
% tar xvzf php-3.0.12jp-beta4.tar.gz % cd php-3.0.12jp-beta4 % ./configure --enable-i18n --enable-mbregex % make
% tar xvzf php-3.0.12jp-beta4.tar.gz % tar xvzf apache_1.3.x.tar.gz % cd apache_1.3.x % ./configure % cd ../php-3.0.12jp-beta4 % ./configure --with-apache=../apache_1.3.x --enable-i18n --enable-mbregex % make % make install % cd ../apache_1.3.x % ./configure --activate-module=src/modules/php3/libphp3.a % make % make install
DSO 機能付きのApacheを作成しておく。
% tar xvzf apache_1.3.x.tar.gz % cd apache-1.3.x % ./configure --enable-shared=max % make % make install ここからがPHP3 % cd php-3.0.12jp-beta4 % ./configure --with-apxs=/usr/local/apache/bin/apxs --enable-i18n \ --enable-mbregex % make % make install
注意: HTTP出力コードをpass以外に指定した場合、「内部コード」からHTTP出力コードへの コード変換が自動的に行われます。この結果、(GD等で画像出力を行う場合等)バイナリデータ を出力したい場合に、期待しないコード変換が行われてデータが壊れてしまいます。 このような場合には、HTTP出力コードをpassに指定してください。