目前,当我的 Web 应用程序在本地机器上托管时,它可以打印错误。
当我将其托管在 Amazon EC2 服务器上时。错误页面为空/空白。
我想查看在 EC2 上运行时的错误堆栈跟踪,我该怎么做?
我在我的 EC2 上使用 Ubuntu Natty 11.04 和 LAMP Stack。
答案1
您能发布 php.ini 的内容吗?这看起来像是一个配置问题。我们需要检查 Web 服务器是否可以找到您在 php.ini 中定义的错误日志,以及 Web 服务器是否有权限写入它。如果任一条件不满足,PHP 就会默默失败...
答案2
打开 php.ini 文件并更改以下指令,使其看起来像这样。
display_errors = On
error_reporting = E_ALL
然后重新启动 Apache 并做一些导致错误的事情,例如手动调用trigger_error('Test');
某个页面。
您应该意识到这对于生产网站来说是不好的做法。这些设置在开发中很好,你可以想错误不应该很明显,但对于生产环境,您应该将错误记录到您检查的文件中。此日志文件由指令定义error_log
。