錯(cuò)誤處理
在之前我們?cè)趯懘a的時(shí)候經(jīng)常會(huì)看到:函數(shù)名寫錯(cuò)了,忘加分號(hào)了,函數(shù)被重新定義了都會(huì)報(bào)各種不同樣的錯(cuò)。
在開(kāi)發(fā)中,顯示錯(cuò)誤對(duì)我們的開(kāi)發(fā)非常有利。因?yàn)?,顯示錯(cuò)誤后能幫我們快速定位錯(cuò)誤、解決問(wèn)題。
而在生產(chǎn)環(huán)境(即公網(wǎng))給其他人訪問(wèn)的的網(wǎng)站、微網(wǎng)站、手機(jī)網(wǎng)站、手機(jī)接口... ...等等。
如果錯(cuò)誤顯示出來(lái)了,就容易暴露:
- 服務(wù)器的文件路徑和文件存儲(chǔ)規(guī)范
- 有些人喜歡用個(gè)人名命名,通過(guò)社會(huì)工程學(xué)可以反向推理出密碼
- 有時(shí)還會(huì)暴露mysql數(shù)據(jù)庫(kù)服務(wù)器的地址
... ... 等等
上面這些信息特別容易被網(wǎng)上別有用心的一些人給利用。
例如下面這段代碼,我們不加分號(hào)就全面暴露了我們的服務(wù)器端文件存放路徑、框架信息等。如下:
<?php $fp = fopen('abc.txt','a+') fwrite($fp,'abc'); fclose($fp); ?>
報(bào)錯(cuò)了:
錯(cuò)誤提示中文翻譯過(guò)來(lái)為:
解析錯(cuò)誤:語(yǔ)法錯(cuò)誤。意外發(fā)生在/home/vagrant/Code/Laravel/public/index.php 文件的第5行fwrite附近。
那,我們?cè)撊绾谓鉀Q了?
——這就需要學(xué)習(xí)我們的錯(cuò)誤處理章節(jié)。