web-dev-qa-db-ja.com

IIS詳細が表示されないPHPエラー-サーバー障害500が代わりに表示される

私はApacheからサイトを提供することに慣れていますが、今はIISサーバーを使用することを余儀なくされています。

いくつかのPHPページがエラー500を返し、IISがエラーメッセージを抑制しているため、デバッグできません。私はini_set('display_errors',1);コード内ですが、無効です。

一部のサイトではエラーが表示されますが、デバッグしたいサイトでは特に表示されないため、グローバルなPHP=設定ではなく、サイト設定と関係があると思います地点。

PHPエラーの表示を有効にする方法について明確な答えが見つかりません。

このリンク は見つかりましたが、「system.webServer-> httpErrors」がどこにあるかわかりません。

IISでPHPの表示エラーを有効にするにはどうすればよいですか?

9
Andy

代わりにそれらを記録するのはどうですか?

Php.iniを編集して設定

error_reporting = E_ALL & ~E_NOTICE
log_errors = On

そしてどちらか

error_log = syslog Windowsイベントログに記録する、または

error_log = location/of/logfileファイルにログを記録します。

6
adaptr

Php.iniファイルにすべての適切な設定があると仮定します

  1. IISマネージャでウェブサイトを選択します
  2. 右側の[エラーページ]アイコンをダブルクリックします
  3. [アクション]の右下にある[機能設定の編集]リンクをクリックします
  4. 表示されるポップアップで、[詳細なエラー]ラジオボタンを選択します
  5. 詳細なエラーを表示するには、PHPページを更新してください

this ページの最後のコメントに感謝

5

accessIISがホストするページを使用することをお勧めします。 -)テストのためにInternetExplorerを使用します。

私の場合、php-error-logsはきれいです-そこからの手掛かりはありませんでした。

Firefox/chromeに接続すると、わかりにくい「500-内部サーバーエラー」が表示される enter image description here

...ただし、InternetExplorerを使用すると、より便利なエラーメッセージ(「HTTPエラー500.0-内部サーバーエラーC:\ PHP\php-cgi.exe-FastCGIプロセスが予期せず終了しました」): enter image description here

サーバー自体で http:// localhost から接続することもできます。

0
eli