我发现错误的一个常见原因是异常处理程序中抛出异常。我很确定在我正在尝试调试的应用程序中不会发生这种情况......但我已将所有初始化处理行放在try.cat中的index.php顶部。*
它显然也可能发生,因为有些东西无法序列化 存储在会话中。最多这个应用程序将数组存储到会话中(相当多),但我相信它不会存储太多与众不同的内容。
有人评论说它发生在他们身上,因为他们的主键需要是CHAR(32)而不是INT(11)。这个应用程序中的PK都是INT。
其他建议是,它可能是在5.3.6中修复的PHP 5.3.3 ,完整磁盘以及需要对SimpleXML值进行类型转换的问题。我们确实正在运行PHP 5.3.3,但在这种情况下升级必须是最后的手段。它并非一直如此。
更新/注意:我实际上无法自己重现错误,只能在日志中看到它,请参阅下面的段落,我相信错误发生在哪里...
*从错误日志中,似乎至少发生了一个地方是index.php。我推断这只是因为它在某些条目中通过引用URL表示。try / catch代码目前仅围绕脚本的“顶部”初始化部分,下面主要是HTML输出。输出中有一些PHP代码(虽然很简单),所以我可能需要测试它。这是catch部分,它不会在日志中产生任何输出:
} catch (Exception $e) {
error_log(get_class($e)." thrown. Message: ".$e->getMessage(). " in " . $e->getFile() . " on line ".$e->getLine());
error_log('Exception trace stack: ' . print_r($e->getTrace(),1));
}
非常感谢任何关于此的提示!
编辑:PHP作为Apache模块运行(服务器API:Apache 2.0处理程序)。我不认为有任何PHP加速器在使用,但它可能只是我不知道如何分辨。的那些没有在维基百科上列出的是phpinfo()函数。
据我所知,MPM是prefork。这是我第一次看到MPM:
# ./httpd -l
Compiled in modules:
core.c
prefork.c
http_core.c
mod_so.c
发布于 2018-09-03 15:33:37
这可能有点晚,但我在将站点从本地服务器移动到远程服务器时发现了一个问题。我正在使用Concrete5 cms本地开发了我的站点(xampp中的windows 8)然后上传到运行Cent 0S的远程服务器
默认情况下,Windows mysql不区分大小写,并创建了一个小写数据库。一旦将其上传到远程服务器,我收到了“在第0行的Unknown中没有堆栈帧的情况下抛出异常?”
然后我更正了数据库表格案例,我的网站又开始工作了。
发布于 2018-09-03 17:03:09
我也有这样的错误。发现我在会话类中返回了一个sql对象(由session_handler使用),而不是返回任何内容,或者至少不返回sql对象。首先看看你的_write和_read方法,如果你也返回一些不正确的东西。
https://stackoverflow.com/questions/-100002541
复制相似问题