错误处理

在之前我们在写代码的时候经常会看到:函数名写错了,忘加分号了,函数被重新定义了都会报各种不同样的错。

在开发中,显示错误对我们的开发非常有利。因为,显示错误后能帮我们快速定位错误、解决问题。

而在生产环境(即公网)给其他人访问的的网站、微网站、手机网站、手机接口... ...等等。

如果错误显示出来了,就容易暴露:

  1. 服务器的文件路径和文件存储规范
  2. 有些人喜欢用个人名命名,通过社会工程学可以反向推理出密码
  3. 有时还会暴露mysql数据库服务器的地址
    ... ... 等等

上面这些信息特别容易被网上别有用心的一些人给利用。

例如下面这段代码,我们不加分号就全面暴露了我们的服务器端文件存放路径、框架信息等。如下:

<?php

$fp = fopen('abc.txt','a+')

fwrite($fp,'abc');

fclose($fp);
?>

报错了:

document/2015-09-22/560126786806a

错误提示中文翻译过来为:
解析错误:语法错误。意外发生在/home/vagrant/Code/Laravel/public/index.php 文件的第5行fwrite附近。

那,我们该如何解决了?

——这就需要学习我们的错误处理章节。

Weiter lernen
||
einreichenCode zurücksetzen