本文目錄一覽:
- 1、php中display_errors與error_reporting是什麼關係
- 2、PHP寫的頁面無法訪問,報HTTP500錯誤,這個是怎麼回事
- 3、如何關閉php錯誤回顯信息
- 4、PHP類報錯怎麼辦?
- 5、PHP沒有錯誤提示
- 6、LNMP模式下如何開啟PHP錯誤日誌
php中display_errors與error_reporting是什麼關係
display_errors是開啟php錯誤提示,而且是所有錯誤提示, 開啟錯誤提示,是為了方便調試修改!
但並不是所有錯誤都需要的的, php有些錯誤, 只是個提示, 但不影響程序的運行, 像這種提示, 又不要他顯示!
但display_errors要不是關閉,要不就是開啟, 無法做到選擇性提示!
那麼error_reporting作用就出來了
error_reporting可以選擇性的關閉或者說忽略某些不想要的錯誤提示!
PHP寫的頁面無法訪問,報HTTP500錯誤,這個是怎麼回事
原因百分之80來自於網站根目錄的config.php文件中資料庫相關設定錯誤,這種錯誤排除,只要檢查一下config.php文件中的伺服器和資料庫名稱、使用者名稱、密碼,還有資料庫前綴字串,再來就是檔案文件路徑,只要是多一個或少一個符號、大小寫錯誤、空格…絕對會賞你一個[HTTP 500 內部伺服器發生錯誤]的排頭吃。
再來百分之10的錯誤來自於網站程式碼設計錯誤也會出現[HTTP 500 內部伺服器發生錯誤]的頁面,這個錯誤一來可以從視窗工具=網際網路選項=進階=去掉勾選:顯示易懂的HTTP錯誤訊息,二來可以從網站根目錄的error_log紀錄中看出一些端倪,再來排除,還有百分之5剛好碰上訪問的網站在維護,最多的例子是網站升級和網站遷移。
將錯誤訊息顯示出來。
而顯示的方法有兩種,一種是設定php.ini;另一種是透過程式碼開啟,操作方法請參考以下:
一、設定php.ini
1.首先開啟php.ini檔
2.使用「Ctrl」+「F」搜尋【display_errors】
3.將「display_errors=Off」改為「display_errors=On」
4.重新啟動Apache
5.重啟開啟網頁
二、透過程式碼開啟
1.開啟顯示「伺服器錯誤(500)」的程式檔
2.於程式檔加入以下程式碼
ini_set(“display_errors”, “On”); // 設定是否顯示錯誤( On=顯示, Off=隱藏 )
3.重啟開啟網頁
如何關閉php錯誤回顯信息
有幾種方法可以屏蔽錯誤回顯信息:
php.ini的display_errors
在php.ini文件中找到display_errors設置項,如果前面有分號,需要刪去分號,並將值改為off
php.ini的error_reporting
這個是修改錯誤級別顯示,如果將級別設為最高等級的,則什麼錯誤都不會顯示
在php.ini中找到error_reporting,去掉前面的分號(如果有),並將值改為0
使用ini_set函數配置
此方法同方法1、2,只是在代碼裏面寫,在無法修改php.ini的時候使用
string ini_set ( string $varname , string $newvalue )
ini_set(‘display_errors’, ‘0’);
ini_set(‘error_reporting’,’0′);
使用error_reporting函數
int error_reporting ([ int $level ] )
error_reporting(0);//關閉所有錯誤報告
使用@屏蔽單條語句的錯誤回顯
在需要屏蔽錯誤回顯的語句前添加@符號
PHP類報錯怎麼辦?
方法一:@
在任何錯誤語句之前加上@符號,即可屏蔽。
方法二:error_reporting
在PHP文件第一行加上:error_reporting(0); 即可屏蔽。
PHP
是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。
PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。
PHP沒有錯誤提示
PHP沒有錯誤提示是設置錯誤造成的,解決方法為;
1、確認了PHP的配置文件的路徑之後,在文本編輯器打開該文件。
2、在文件中查找,display_errors=On代表錯誤提示開啟display_errors=OnOff代表錯誤提示關閉display_errors=Off。
3、實例演示,定義一個錯誤的PHP語法。
4、在瀏覽器預覽的時候,不能正確打印,卻不報錯,因為當前的display_errors=Off,錯誤提示沒有開啟。
5、開啟PHP的錯誤提示,設置:display_errors=On並保存該文件的新設置。
6、保存設置之後,再次重啟apache服務。
7、現在已經成功開啟了PHP的錯誤提示,可以正常報告錯誤信息了。
LNMP模式下如何開啟PHP錯誤日誌
500錯誤首先就需要先開啟php錯誤日誌,通過php錯誤日誌來排錯。
LNMP下的錯誤需要編輯 /usr/local/php/etc/php-fpm.conf 加上
php_admin_value[error_log] = /usr/local/php/var/log/php_errors.log
php_admin_flag[log_errors] = on
或在/usr/local/php/etc/php-fpm.conf里設置,加上catch_workers_output
= yes,錯誤信息就會記錄到php-fpm.conf里error_log設置的文件里。 上述兩種方法都行,重啟php-fpm生效
同理php.ini里的display_errors也是需要在php-fpm.conf里設置的,加上php_flag[display_errors]
= On就開啟了。 有時可能錯誤日誌文件不自動創建,可以執行:touch
/usr/local/php/var/log/php_errors.log
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/227225.html