我最近在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或Homestead中的其他進程所捕獲,並且出錯(這給了我至少一些關於從何處開始調試的信息)。 –