php執行時不顯示錯誤資訊?
如果你安裝好了,那麼在C:windows下有個php.ini,應該改這個
如果沒安裝好,那麼把php.ini-dist改為php.ini 複製到C:windows下面
要顯示錯誤資訊,處理改設定,還要該IE設定
工具/internet選項/高階/拉到最下面有個顯示友好的http錯誤資訊,去掉勾.
php.ini 檔案中有許多配置設定。您應當已經設定好自己的 php.ini 檔案並把它放在合適的目錄中,就像在 Linux 上安裝 PHP 和 Apache 2 的文件說明中所示的那樣(。在除錯 PHP 應用程式時,應當知道兩個配置變數。下面是這兩個變數及其預設值:
display_errors = Off error_reporting = E_ALL |
通過在 php.ini 檔案中搜索它們,可以發現這兩個變數當前的預設值。display_errors
變數的目的很明顯 —— 它告訴 PHP 是否顯示錯誤。預設值是
Off
。但是,要讓開發過程更加輕鬆,請把這個值設為
On
:
display_errors = On |
error_reporting
變數的預設值是
E_ALL
。這個設定會顯示從不良編碼實踐到無害提示到出錯的所有資訊。E_ALL
對於開發過程來說有點太細,因為它在螢幕上為一些小事(例如變數未初始化)也顯示提示,會搞糟瀏覽器的輸出。我只想看到錯誤和不良編碼實踐,但是不想看到無害的提示。所以,請用以下值代替
error_reporting
的預設值:
error_reporting = E_ALL & ~E_NOTICE |
重新啟動 Apache,就全部設定好了。接下來,將學習如何在 Apache 上做同樣的事。
依賴於 Apache 正在做的工作,在 PHP 中開啟錯誤報告可能沒法工作,因為在計算機上可能有多個 PHP 版本。有時很難區分 Apache 正在使用哪個 PHP 版本,因為 Apache 只能檢視一個 php.ini 檔案。不知道 Apache 正在使用哪個 php.ini 檔案配置自己是一個安全問題。但是,有一種方法可以在 Apache 中配置 PHP 變數,從而保證設定了正確的出錯級別。
而且,最好知道如何在伺服器端設定這些配置變數,以否決或搶佔 php.ini 檔案,從而提供更高級別的安全性。
在配置 Apache 時,應該已經接觸過 <apache2-install-dir>/conf/httpd.conf 中 http.conf 檔案中的基本配置。
要做在 php.ini 檔案中已經做過的事,請把下列各行新增到 httpd.conf,覆蓋任何 php.ini 檔案:
php_flag display_errors on php_value error_reporting 2039 |
這會覆蓋在 php.ini 檔案中為 display_errors
已經設定的標誌,以及
error_reporting
的值。值
2039
代表 E_ALL & ~E_NOTICE
。如果願意採用
E_ALL
,請把值設為 2047
。同樣,還是要重啟 Apache。
如果你安裝好了,那麼在C:windows下有個php.ini,應該改這個
如果沒安裝好,那麼把php.ini-dist改為php.ini 複製到C:windows下面
要顯示錯誤資訊,處理改設定,還要該IE設定
工具/internet選項/高階/拉到最下面有個顯示友好的http錯誤資訊,去掉勾
In the productive environment, it is suggested that you set display_errors=Off for security reasons. however, if you don't wanna change php.ini, an alternative way to do the same thing is to add 'error_reporting(0);' at the top of your specific program.
轉自:http://wangxiang2010.blog.51cto.com/287785/d-6