web-dev-qa-db-ja.com

IIS 7にphpエラーメッセージを表示する

IISを開発マシンのWebサーバーとしてPHP webdevelopmentに使用しています。少なくとも、私は使用しています。

PHPスクリプトに構文エラーがあり、そのファイルをウェブブラウザで開くと、503「内部サーバーエラー」とデフォルトのIIS =このエラーのエラーページ一部のブラウザは、おそらく503 HTTP応答ヘッダーが原因で、そのファイルをまったく開けません。

IISでApacheウェブサーバーと同じように動作するようにしたい:エラーを含むPHPファイルを表示して、エラーメッセージが出力されるようにします。 。

これはどのように行うことができますか?

編集:

PHP設定:

display_errors

オンであり、

error_reporting

e_ALLに設定されている

7
Max

IIS7では、デフォルトでエラーを通過させません。設定する必要があるのは「existingResponse」です。

次のコマンドを実行して設定できます({sitename}を自分のサイト名に置き換えてください)。

c:\windows\system32\inetsrv\appcmd.exe set config "{sitename}" -section:system.webServer/httpErrors /existingResponse:"PassThrough" /commit:apphost
5

PHPスクリプトの上部に次の2行を含めます)

ini_set('display_errors','On');

error_reporting(E_ALL | E_STRICT);
1
Frank

ベストプラクティスは、ファイルに「サイレント」でログを記録することです。

しかし、php.iniファイルの次の値をログファイルに設定することで、両方を使用できます

error_log=<File Location>
1

PHP(および他の言語))の詳細なエラーを有効にするには、コマンドラインから次のコマンドを実行します。

%windir%\system32\inetsrv\appcmd.exe set config -Section:system.webServer/httpErrors -errorMode:Detailed

その後

IISReset
1
Sam Cogan

Php.iniセット:

error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT
display_errors = On

そして、あなたがそれらを記録したい場合:

log_errors = On
0
rkthkr