web-dev-qa-db-ja.com

IIS6にPHP5をインストールする際のエラー

IIS6を使用しているWindowsServer 2003マシンにPHPをインストールしようとしています。fastCGIのバイナリの使用を含め、インストールについては このガイド に従いました。すべてを正しく実行しましたが、phpinfo();ページを作成すると、次のように表示されます。サーバーエラー、fastcgiサーバーに接続できません。

考えられるすべてのログを調べてみました。 IISログに役立つものはありません。PHPは、エラーなどをログに記録することはなく、イベントログにも何も記録しません。

助けてくださいそしてありがとう:)

7
numone

それはかなり時代遅れのブログエントリであり、それ以来、人生は大幅に進んでいます。だからあなたがそのページで読んだすべてを忘れてください:)

1。 PHPをダウンロード:

Windows用のPHPの最新の安定バージョンをダウンロードします。この場合、PHP 5.3.6 x86非スレッドセーフZipファイルをダウンロードします(注:バージョン番号はPHPチームが新しい安定したバイナリをリリースする)として変更します。

http://windows.php.net/download/
http://windows.php.net/downloads/releases/php-5.3.6-nts-Win32-VC9-x86.Zip

Zipファイルの内容を_C:\PHP_というフォルダーに抽出して、このフォルダーに次のサブフォルダー構造を作成します。

_C:\PHP\dev , C:\PHP\ext , C:\PHP\extras, etc
_

_php-*.ini_ファイルの1つを_php.ini_に名前変更し、必要に応じて編集します。

2。 IIS5.1/6.0用のMicrosoftのFastCGI拡張機能をインストール/構成します:

ここからダウンロードできるMicrosoftのIIS6FastCGI拡張機能をインストールします。

http://www.iis.net/download/fastcgi

インストールしたら、_C:\Windows\System32\InetSrv\fcgiext.ini_を編集して、次のものだけが含まれるようにします。

_[Types]
php=PHP

[PHP]
ExePath=C:\PHP\php-cgi.exe
_

3。構成IIS PHPスクリプトマップ:

サイトを右クリックしてプロパティを選択することにより、選択したWebサイトに_.php_スクリプトマップを編集または追加します(またはグローバルに追加できます)。

enter image description here

_Home Directory_タブを選択し、Configurationをクリックします。

enter image description here

Addをクリックします(または、まだ_.php_スクリプトマップがリストされている場合は、それを削除して再度追加します)。

[実行可能ファイル]フィールドと[拡張機能]フィールドに次の値を入力する必要があります。

_Executable: C:\WINDOWS\system32\inetsrv\fcgiext.dll
Extension: .php
_

[OK]をクリックして、これらの変更を保存します。

4。構成PHP PHP.INIのFastCGI設定:

エディターで_C:\PHP\php.ini_を開き、次の設定を見つけて構成します。

_fastcgi.impersonate = 1
cgi.fix_pathinfo = 1
cgi.force_redirect = 0
date.timezone = Europe/London  ; (http://uk3.php.net/manual/en/timezones.php)
_

phpinfo();ページを正しくレンダリングするには、今すぐタイムゾーンを設定する必要があるようですが、とにかくこれを設定することをお勧めします。

5。 PHPのテスト:

次のように_test.php_というファイルを作成します。

_<?php
    phpinfo();
?>
_

このページを参照してください。すべて問題がなければ、次のように表示されます。

enter image description here

その後、使用する拡張機能の決定など、構成を微調整するのはあなた次第です。

考えた後:

システムの設定方法によっては、_C:\PHP_フォルダーのアクセス許可を調整する必要がある場合があります。それがかなりストックインストールであり、サイトがネットワークサービスアカウントを使用してアプリケーションプールで実行されていて、生成された_IUSR_<MACHINE_NAME>_匿名アカウントを使用している場合は、何も変更する必要はありません。

11
Kev

C:\ WINDOWS\temp\php-errors.logのphpログにエラーが見つかる場合があります

これらは、php.iniファイル(これらの手順に従った場合はc:\ windows内)を変更し、行のセミコロンを削除した場合にのみ、イベントログに表示されます。

; error_log = syslog

0
paulmorriss