转:http://www.sunzhenghua.com/magento-error-page-and-troubleshooting
在这一章节, 我们来了解在 Magento 中报错信息(Error Message) 是如何设置的, 并且报错信息共有哪些
首先我们来看下标准的报错页面(Standard Error Page)
从上图中可以看出, Magento 出于安全性的考虑, 没有直接将错误信息显示出来, 取而代之的是将错误信息存入了文件, 对外而言这是一个非常好的安全措施,你当然不想游览者知道你的文件名和路径,以及错误的具体内容。
所以如果你想看下错误信息, 那么路径就是: /var/report/, 打开后你会发现文件名就是以上图中的错误代码命名的, 在本例中文件名为: 567330089, 该文件格式为: text, 所以基本上所有的编辑器都可以打开它
如果你希望在开发过程中能直接快速的看到错误信息, 那你需要对你的配置文件做一下修改, 进入 Magento 的根目录, 将 /errors/local.sample.xml 修改为 /errors/local.xml , 此时刷新你的页面,错误信息将被直接显示出来了
如果你是上线模式, 我建议你不要开启
以邮件模式显示报错页面
在 Magento 中还有个强劲的功能, 如果你连错误信息代码都不想让游览者看见, 取代的是一个专业的报错邮件提醒页面,如下图所示:
为了达到这个效果, 你需要对 /errors/local.xml 文件进行修改:
1
2
3
4
5
6
7
|
<
action
>print</
action
>
//修改为
<
action
>email</
action
>
<
email_address
></
email_address
>
//填写你的邮件
<
email_address
>shawn0828@hotamil.com</
email_address
>
|
这样的话就能显示出一个漂亮的报错邮件通知页面了, 当然你也可以进入 /errors/default/report.html, 对其修改 CSS 样式以达到你的设计需求
日志 Logging
Magento 中另外一个 Degbug 的方法就是错误日志, 不过你必须进入 Admin Panel -> System -> Configuration -> Advanced -> Developer -> Log Settings, "Enabled" 设置为 "Yes", 这样你就可以在 /var/log 文件夹内看见
PHP 错误信息 PHP Error Messages
有时,你会碰见一些 PHP 错误信息,然而你看见的却是一个空白页面, 原因是因为在 Magento 中 php 错误信息是默认关闭的, 如想打开,你需要到 Magento 的根目录下修改 index.php:
1
2
3
4
5
6
7
|
error_reporting
(E_ALL | E_STRICT);
//修改为
error_reporting
(E_ALL);
#
ini_set
(
'display_errors'
, 1);
//修改为
ini_set
(
'display_errors'
, 1);
|
这些就是所有 Magento 提供的错误信息提示方法了, 如果你还没能找到错误的原因所在, 那只能建议你请教高手了
如有更好的建议和代码片段,欢迎留言提出