五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > PHP運(yùn)行時(shí)強(qiáng)制顯示出錯(cuò)信息及錯(cuò)誤日志記錄

PHP運(yùn)行時(shí)強(qiáng)制顯示出錯(cuò)信息及錯(cuò)誤日志記錄

文章來(lái)源:365jz.com     點(diǎn)擊數(shù):518    更新時(shí)間:2017-08-16 09:46   參與評(píng)論
PHP中的錯(cuò)誤簡(jiǎn)單點(diǎn)兒理解就是導(dǎo)致PHP代碼不能正常執(zhí)行的各種問(wèn)題的集合,錯(cuò)誤是需要被處理的,PHP引擎在執(zhí)行過(guò)程中也會(huì)對(duì)錯(cuò)誤進(jìn)行各種提示,這種提示其實(shí)也是對(duì)錯(cuò)誤的一種處理,只不過(guò)比較粗暴而已。
PHP中與錯(cuò)誤有關(guān)的內(nèi)容可大致分為:PHP錯(cuò)誤的類型和錯(cuò)誤級(jí)別有關(guān)內(nèi)容、PHP代碼中顯式的錯(cuò)誤處理機(jī)制、PHP代碼中的錯(cuò)誤信息使用日志形式記錄的有關(guān)配置內(nèi)容 等。
 
error_reporting(E_ALL); 
ini_set('display_errors', '1'); 
ini_set('error_log', dirname(__FILE__) . '/error_log.txt'); //將出錯(cuò)信息輸出到一個(gè)文本文件 

怎樣輸出錯(cuò)誤信息到一個(gè)文件,同時(shí)不讓錯(cuò)誤信息出現(xiàn)在網(wǎng)站上呢,這個(gè)對(duì)線上的項(xiàng)目調(diào)試很好,自己可以看錯(cuò)誤信息,但是客戶端看不到!有木有辦法
可以使用 set_error_handler控制

錯(cuò)誤和日志記錄
常量 說(shuō)明 備注
1 E_ERROR (integer) 致命的運(yùn)行時(shí)錯(cuò)誤。這類錯(cuò)誤一般是不可恢復(fù)的情況,例如內(nèi)存分配導(dǎo)致的問(wèn)題。后果是導(dǎo)致腳本終止不再繼續(xù)運(yùn)行。  
2 E_WARNING (integer) 運(yùn)行時(shí)警告 (非致命錯(cuò)誤)。僅給出提示信息,但是腳本不會(huì)終止運(yùn)行。  
4 E_PARSE (integer) 編譯時(shí)語(yǔ)法解析錯(cuò)誤。解析錯(cuò)誤僅僅由分析器產(chǎn)生。  
8 E_NOTICE (integer) 運(yùn)行時(shí)通知。表示腳本遇到可能會(huì)表現(xiàn)為錯(cuò)誤的情況,但是在可以正常運(yùn)行的腳本里面也可能會(huì)有類似的通知。  
16 E_CORE_ERROR(integer) 在PHP初始化啟動(dòng)過(guò)程中發(fā)生的致命錯(cuò)誤。該錯(cuò)誤類似 E_ERROR,但是是由PHP引擎核心產(chǎn)生的。 since PHP 4
32 E_CORE_WARNING(integer) PHP初始化啟動(dòng)過(guò)程中發(fā)生的警告 (非致命錯(cuò)誤) 。類似E_WARNING,但是是由PHP引擎核心產(chǎn)生的。 since PHP 4
64 E_COMPILE_ERROR(integer) 致命編譯時(shí)錯(cuò)誤。類似E_ERROR, 但是是由Zend腳本引擎產(chǎn)生的。 since PHP 4
128 E_COMPILE_WARNING(integer) 編譯時(shí)警告 (非致命錯(cuò)誤)。類似 E_WARNING,但是是由Zend腳本引擎產(chǎn)生的。 since PHP 4
256 E_USER_ERROR(integer) 用戶產(chǎn)生的錯(cuò)誤信息。類似 E_ERROR, 但是是由用戶自己在代碼中使用PHP函數(shù) trigger_error()來(lái)產(chǎn)生的。 since PHP 4
512 E_USER_WARNING(integer) 用戶產(chǎn)生的警告信息。類似 E_WARNING, 但是是由用戶自己在代碼中使用PHP函數(shù) trigger_error()來(lái)產(chǎn)生的。 since PHP 4
1024 E_USER_NOTICE(integer) 用戶產(chǎn)生的通知信息。類似 E_NOTICE, 但是是由用戶自己在代碼中使用PHP函數(shù) trigger_error()來(lái)產(chǎn)生的。 since PHP 4
2048 E_STRICT (integer) 啟用 PHP 對(duì)代碼的修改建議,以確保代碼具有最佳的互操作性和向前兼容性。 since PHP 5
4096 E_RECOVERABLE_ERROR(integer) 可被捕捉的致命錯(cuò)誤。 它表示發(fā)生了一個(gè)可能非常危險(xiǎn)的錯(cuò)誤,但是還沒有導(dǎo)致PHP引擎處于不穩(wěn)定的狀態(tài)。 如果該錯(cuò)誤沒有被用戶自定義句柄捕獲 (參見 set_error_handler()),將成為一個(gè)E_ERROR 從而腳本會(huì)終止運(yùn)行。 since PHP 5.2.0
8192 E_DEPRECATED(integer) 運(yùn)行時(shí)通知。啟用后將會(huì)對(duì)在未來(lái)版本中可能無(wú)法正常工作的代碼給出警告。 since PHP 5.3.0
16384 E_USER_DEPRECATED(integer) 用戶產(chǎn)少的警告信息。 類似 E_DEPRECATED, 但是是由用戶自己在代碼中使用PHP函數(shù) trigger_error()來(lái)產(chǎn)生的。 since PHP 5.3.0
30719 E_ALL (integer) E_STRICT出外的所有錯(cuò)誤和警告信息。 30719 in PHP 5.3.x, 6143 in PHP 5.2.x, 2047 previously
記錄PHP錯(cuò)誤日志 display_errors與log_errors的區(qū)別

display_errors 
錯(cuò)誤回顯,一般常用語(yǔ)開發(fā)模式,但是很多應(yīng)用在正式環(huán)境中也忘記了關(guān)閉此選項(xiàng)。錯(cuò)誤回顯可以暴露出非常多的敏感信息,為攻擊者下一步攻擊提供便利。推薦關(guān)閉此選項(xiàng)。 
display_errors = On 
開啟狀態(tài)下,若出現(xiàn)錯(cuò)誤,則報(bào)錯(cuò),出現(xiàn)錯(cuò)誤提示 
dispaly_errors = Off 
關(guān)閉狀態(tài)下,若出現(xiàn)錯(cuò)誤,則提示:服務(wù)器錯(cuò)誤。但是不會(huì)出現(xiàn)錯(cuò)誤提示 

log_errors 
在正式環(huán)境下用這個(gè)就行了,把錯(cuò)誤信息記錄在日志里。正好可以關(guān)閉錯(cuò)誤回顯。 

對(duì)于PHP開發(fā)人員來(lái)說(shuō),一旦某個(gè)產(chǎn)品投入使用,那么第一件事就是應(yīng)該將display_errors選項(xiàng)關(guān)閉,以免因?yàn)檫@些錯(cuò)誤所透露的路徑、數(shù)據(jù)庫(kù)連接、數(shù)據(jù)表等信息而遭到黑客攻擊。 

某個(gè)產(chǎn)品投入使用后,難免會(huì)有錯(cuò)誤信息,那么如何記錄這些對(duì)開發(fā)人員非常有用的信息呢? 
將PHP的log_errors開啟即可,默認(rèn)是記錄到WEB服務(wù)器的日志文件里,比如Apache的error.log文件。 
當(dāng)然也可以記錄錯(cuò)誤日志到指定的文件中。 

PHP.ini中display_errors = Off失效的解決 

問(wèn)題: 
PHP設(shè)置文件php.ini中明明已經(jīng)設(shè)置display_errors = Off,但是在運(yùn)行過(guò)程中,網(wǎng)頁(yè)上還是會(huì)出現(xiàn)錯(cuò)誤信息。 
解決: 
經(jīng)查log_errors= On,據(jù)官方的說(shuō)法,當(dāng)這個(gè)log_errors設(shè)置為On,那么必須指定error_log文件,如果沒指定或者指定的文件沒有權(quán)限寫入,那么照樣會(huì)輸出到正常的輸出渠道,那么也就使得display_errors 這個(gè)指定的Off失效,錯(cuò)誤信息還是打印了出來(lái)。于是將log_errors = Off,問(wèn)題就解決了。 


如對(duì)本文有疑問(wèn),請(qǐng)?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會(huì)為你解答!! 點(diǎn)擊進(jìn)入論壇

發(fā)表評(píng)論 (518人查看,0條評(píng)論)
請(qǐng)自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動(dòng)的言論。
昵稱:
最新評(píng)論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時(shí)間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)