IIS+PHP環境構築(Windows)
(編集中)
とりあえず適当にメモ。あとで直す予定。
元は2004/8頃のメモです。
実運用環境はFreeBSD+Apache+MySQL+PHPにすることが多いのですが、開発環境はWindowsで作った方が楽だと思うので、Windows+IIS+MySQL+PHPです。
IISなのは、WindowsのApacheのインストールが面倒(だと思っている)なのと、ASPなどを使う場合には結局IISを入れることになるからです。
PostgreSQLではなくMySQLなのは単に好みの問題です。今はどうなっているか分かりませんが、海外でのシェアはMySQLの方が高いため、オープンソースのコードを持ってくるとMySQLなことが多くありました。また、今ではMySQLでもサブクエリが使えますが、4.0以前ではサブクエリがほとんど使えなかったため、PostgreSQLからMySQLへの移行がMySQLからPostgreSQLへの移行に比べて面倒だったというのも理由のひとつです。
開発環境であって、公開される環境の作り方ではありません。この環境をインターネット上でオープンにすると、セキュリティやライセンスの問題が発生するかもしれません。
OSはWindows XP Professionalです。2000は多分大差ありません。95系は知りません。
IISのインストール †
プログラムの追加と削除>Windowsコンポーネントの追加と削除
から、
インターネットインフォメーションサービス(IIS)
を追加インストールします。
コンポーネントは、WWWサービスは必須です。
PHPのインストール †
PHP5をインストールします。
http://www.php.net/で、PHP 5.0.4 zip packageをダウンロードします。インストーラ版でもいいのですが、そちらはextensionが入っていないので、zip版にします。
適当な場所に解凍します。(c:/php)
c:/phpをシステムパスに追加します。
確認:コマンドプロンプトからphp -v と入力してみる。
c:/php/php.ini-dist を c:/php/php.iniにコピーする。
中身を適宜変更。←あとで内容追加
ついでに、c:/windows/php.iniにもコピーしておきます。これはIIS経由で呼ばれたときに使われます。
確認:コマンドプロンプトからphp -i と入力してみる。
Smartyのインストール †
PHPのテンプレートエンジン「Smarty」をインストールします。
http://smarty.php.net/
ファイルを展開して、lib/以下の中身をc:/php/Smartyにコピーします。
確認:c:/php/Smarty/Smarty.class.phpがあるか調べる
php.iniの編集。
include_pathにc:/php/Smartyを追加します。
NuSoap?のインストール †
PHPのSOAP Toolkitです。
http://sourceforge.net/projects/nusoap/
ファイルを展開して、lib/以下の中身をc:/php/nusoapにコピーします。
php.iniの編集。
include_pathにc:/php/nusoapを追加します。
IISでPHPを使えるようにする †
ISAPIフィルタの追加
ホームディレクトリの追加
ホームディレクトリ>構成>マッピングの追加
ディレクトリセキュリティ>匿名アクセスおよび認証コントロールの編集
Trouble:「予期しないエラー 0x8ffe2740 が発生しました」と出る
Microsoftでの解説ページ
(http://support.microsoft.com/default.aspx?scid=kb;ja;816944)
他にポート80を使ってるソフトがないはずなのにこのエラーが出るときは、とりあえずリブートしてみる。
MySQLのインストール †
MySQL5をインストールします。