我在我的网站中使用codeigniter 2作为模块。这是第一次生产。
num_rows()抛出以下错误
遇到PHP错误
严重性:警告
消息:Home :: index()[home.index]:依赖它是不安全的 系统的时区设置。您必需才能使用 date.timezone设置或date_default_timezone_set()函数。在 如果你使用了这些方法中的任何一种,你仍然会得到这个 警告,你很可能拼写错误的时区标识符。我们 选择“亚洲/加尔各答”代替'IST / 5.0 /无DST'
文件名:controllers / home.php
行号:18
在第18行,我有echo $ catgory-> num_rows();
然后我更新了代码如下
function __construct()
{
date_default_timezone_set('UTC');
parent::__construct();
}
当我重新加载页面时
HTTP错误500(内部服务器错误):出现意外情况 在服务器尝试完成请求时遇到。
可能是什么问题?
是否有可能隐藏此特定错误?
是否与服务器端设置有关?
答案 0 :(得分:0)
问题不在于时区。
我检查了日志,发现发生了致命错误,并且codeigniter向浏览器发送了500状态。
我做了ini_set('display_errors',1),CI显示实际错误,而不是向客户端发送500状态。
所以此时要么关闭生产中的所有错误,要么让它看到所有初始冲突(错误)(因为在某些情况下开发会在生产中有所不同)然后在测试驱动之后再次隐藏所有错误。
我在stackoverflow中阅读这篇文章时得到了这些信息
Codeigniter displays a blank page instead of error messages
此外,我不是在每个控制器中设置时区,而是在index.php中设置它。