Laravel 5.5中的段错误
我最近在Laravel 5.5中开始了一个小项目。我将我的Homestead箱子更新为最新版本。Laravel 5.5中的段错误
在写一个测试,我碰到一个段错误来,如果我拼写错误的断言方法,我创建了可以在https://github.com/laravel/framework/issues/20925
中发现的问题已经现在已经关闭,作为理所当然的GitHub库的问题,这是我的错误(asertPushedOn()
而不是assertPushedOn()
)。
但是我最近遇到了另一个段错误,它又是我的错误(当尝试重载时错误地命名关系),但问题是,这从来没有发生在5.5之前。现在,看起来当我搞砸了一些东西的时候,我随机得到了段错误。我找不到任何事情来帮助在日志中对它们进行调试(Laravel日志文件或Nginx的错误日志。
唯一的错误消息我得到的是Segmentation fault (core dumped)
不告诉我任何事情。
在问题报告中,提到Xdebug的转储出错误我有一个谷歌为laravel homestead xdebug
,但只能找到资源phpstorm(我是一个崇高的用户)
TL; DR:。
1)在Laravel 5.5更新的宅基地箱,如果我搞砸了某个地方,我现在正在得到php segfaults。这是5.5 /家园的改变吗?
2)如何启用xdebug(这实际上有助于调试段错误)? 3)如果xdebug不是答案,我该如何停止获取,或者从segfaults获得更多的默认调试信息?
正如我在创建的问题中提到的,我对segfaults不太了解。
如果您需要任何进一步的信息,请让我知道
编辑
我设法让与Xdebug的:
sudo phpenmod xdebug
sudo service nginx restart
php -m
但我一直无法重现段错误(启用和不启用xdebug),这使段错误对我来说更加困惑。
因此,虽然我无法再现原始段错误,但在xdebug未启用时确实发生了另一段错误。
当我启用了XDebug下列要求:
sudo phpenmod xdebug
sudo service nginx restart
,并重新运行该给我的段错误的脚本,我顺利地拿到了与文件名和行号递归误差来解决它。
你可能有一个递归函数,它耗尽你所有的内存。所以你用完了内存,它给了你那个错误。你能分享你的代码吗? –
我假设递归,但我无法找到任何。因为我认为这可能部分归因于框架,所以不可能共享代码 - 但只能通过我的错误来实现。只是在过去,我确信大型递归已经被xdebug或Homestead中的其他进程所捕获,并且出错(这给了我至少一些关于从何处开始调试的信息)。 –