Php

IIS 未顯示詳細的 PHP 錯誤 - 而是顯示伺服器故障 500

  • May 11, 2021

我習慣於使用 Apache 為網站提供服務,但現在我不得不使用 IIS 伺服器。

我的許多 PHP 頁面返回錯誤 500,我無法調試,因為 IIS 正在抑制錯誤消息。我已經嘗試ini_set('display_errors',1);過程式碼但無濟於事。

某些站點上會顯示錯誤,但不是我要調試的特定站點,因此我認為這不是全域 PHP 設置,而是與該站點的站點設置有關。

我找不到關於如何啟用顯示 PHP 錯誤的明確答案。

我找到了這個連結,但不確定在哪裡可以找到“ system.webServer->httpErrors ”。

如何在 IIS 下啟用 PHP 中的顯示錯誤?

不如記錄它們呢?

編輯 php.ini 並設置

error_reporting = E_ALL & ~E_NOTICE
log_errors = On

而且要麼

error_log = syslog記錄到 Windows 事件日誌,或

error_log = location/of/logfile記錄到文件。

假設您的 php.ini 文件中的所有設置都正確

  1. 在 IIS 管理器中選擇您的網站
  2. 在右側,點兩下錯誤頁面圖示
  3. 在“操作”下的最右側,點擊“編輯功能設置”連結
  4. 在出現的彈出視窗中,選擇“詳細錯誤”單​​選按鈕
  5. 刷新您的 PHP 頁面以查看詳細錯誤

感謝頁面上的最後評論

引用自:https://serverfault.com/questions/382511