2017年12月1日10:18:34
情景描述: 瀏覽器執行了一會兒, 報500錯誤
運行環境: nginx + php-fpm
nginx日志: recv() failed (104: Connection reset by peer) while reading response header from upstream
fpm日志: fpm_request_check_timed_out(), line 146: child 2518, script '***/index.php' (pool www5) executing too slow (2.019546 sec), logging
查看 php-fpm 配置文件后, 發現腳本執行超時時間太短了, 修改為60s, 然后重啟php,nginx環境, 就沒問題了
像這樣出現執行了一會兒又報錯的, 可能的情況有
1. 域名解析有問題
2. 超時(腳本數據庫操作太多, 時間太長)
3. 接口請求相互依賴導致的死等
有的會報502,並很快返回
調試到curl時出錯, 版本 5.2.17,
本地環境出錯(命令行執行: Segmentation fault ; 瀏覽器執行相同代碼直接502, 但是找不到日志),
代碼上傳到測試環境(另一台PHP5.2的機器) 就不會報錯了
PHP7 執行相同的代碼也沒有問題