Laravel 5项目使PHP/Apache崩溃

Laravel 5项目使PHP/Apache崩溃,php,debugging,laravel,Php,Debugging,Laravel,我们在Ubuntu14.04服务器上更新了一个Laravel5项目,现在在访问它的主页时得到了一个ERR\u EMPTY\u响应 服务器上的其他PHP应用程序工作正常 使用GDB,我们能够生成以下内容: root@server-3 /var/crash/apache # gdb apache2 -core CoreDump GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1 Copyright (C) 2014 Free Software Foundati

我们在Ubuntu14.04服务器上更新了一个Laravel5项目,现在在访问它的主页时得到了一个
ERR\u EMPTY\u响应

服务器上的其他PHP应用程序工作正常

使用GDB,我们能够生成以下内容:

root@server-3 /var/crash/apache # gdb apache2 -core CoreDump
GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from apache2...Reading symbols from /usr/lib/debug//usr/sbin/apache2...done.
done.
[New LWP 27190]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

warning: the debug information found in "/usr/lib/debug//usr/lib/php5/20121212/mysql.so" does not match "/usr/lib/php5/20121212/mysql.so" (CRC mismatch).


warning: the debug information found in "/usr/lib/debug/usr/lib/php5/20121212/mysql.so" does not match "/usr/lib/php5/20121212/mysql.so" (CRC mismatch).


warning: the debug information found in "/usr/lib/debug//usr/lib/php5/20121212/mysqli.so" does not match "/usr/lib/php5/20121212/mysqli.so" (CRC mismatch).


warning: the debug information found in "/usr/lib/debug/usr/lib/php5/20121212/mysqli.so" does not match "/usr/lib/php5/20121212/mysqli.so" (CRC mismatch).


warning: the debug information found in "/usr/lib/debug//usr/lib/php5/20121212/pdo_mysql.so" does not match "/usr/lib/php5/20121212/pdo_mysql.so" (CRC mismatch).


warning: the debug information found in "/usr/lib/debug/usr/lib/php5/20121212/pdo_mysql.so" does not match "/usr/lib/php5/20121212/pdo_mysql.so" (CRC mismatch).

Core was generated by `/usr/sbin/apache2 -k start'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  zend_parse_parameters (num_args=1, type_spec=type_spec@entry=0x7f8b02987f9a "H") at /build/php5-RpYHCf/php5-5.5.9+dfsg/Zend/zend_API.c:924
924 /build/php5-RpYHCf/php5-5.5.9+dfsg/Zend/zend_API.c: No such file or directory.
等等

如何修复/进一步调试此问题?谷歌没有为此提出任何特定的PHP错误,也许我也不知道该搜索什么


有没有办法在PHP代码中找到呕吐行?

使用一些
git bisect
magic,我能够识别一个提交,其中包含对配置文件(
config
子文件夹)中
url()
的调用。这导致了递归

在我的开发机器上,我得到一个错误<代码>达到最大函数嵌套级别'100',正在中止。在bespoken服务器上,我刚刚遇到了PHP崩溃

我能够通过这样的递归重现PHP崩溃:

<?php

function foo() {
    foo();
}
foo();

laravel应用程序的内存使用率高吗?看这里,它不应该。。。这是一个相当简单的应用程序。我希望它能达到PHP的内存限制?另外,系统有大量的可用内存(1G),交换已打开,并且有16G可用空间。如果尝试此操作,您可以通过从
public/index.php
中删除所有内容,然后逐段添加来隔离问题。然后可以深入到
bootstrap/start.php
并执行相同的过程,依此类推。
<?php

function foo() {
    foo();
}
foo();