IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    关闭ecstore的友好错误界面

    tiandi发表于 2016-11-02 12:05:38
    love 0

    网站运行了,报错了,最不希望让用户看到的是错误代码,因为这样,很容易把程序路径等暴露在外,一般情况下,都会用友好错误页面代替,同样ecstore也做了同样的设置,一旦页面有错误打不开了,则会显示下面的信息。

    截图00

    但这对于开发人员来说,并不是好事,这样的错误反而会另人一头雾水,无法看清究竟是哪个环节出错了,于是全站搜索”服务异常稍后再试”这几个中文字,定位到文件/app/base/lib/errorpage.php,其中system_crash的方法里输出了这些文字,再看哪里调用system_crash方法呢?同样在该文件里可以发现下面代码:

    static public function exception_handler($exception) {
            if (defined('DEBUG_PHP') && constant('DEBUG_PHP')===true) {
                self::_exception_handler($exception);
                
            }else{
                self::system_crash();
            }
        }
    

    可以看到,如果没有定义DEBUG_PHP并且它的值不等于true的话,则抛出友好错误信息,这里的DEBUG_PHP是config文件里定义的,所以只需要更改config里的配置项即可显示错误详情,但tiandi还是建议改改这里的代码,将开发人员的环境IP加进去,只有IP符合并且开启DEBUG模式,才能显示错误详情比较妥当。

    文章评分2次,平均分5.0:★★★★★


沪ICP备19023445号-2号
友情链接