php网站调试出现的简单问题,调试php时网站出现502的解决方法
這是第二次遇到該問題了,上次解決后因為沒有記錄,結果這次遇到后又得重新查找解決方法。記憶力嚴重減退了啊,還是要保持邊學邊記錄的習慣
網站在正常運行時是沒有問題的,但是在使用xdebug進行遠程調試時,可能會因為單步調試,查看內存,分析數據等情況耗時太長,導致頁面出現502。這時候雖然還可以進行單步調試,但是已經看不到內存數據了(因為進程已經結束)。于是又得重新調試,調試過程中仍然無法避免調試時間過長,頁面繼續502。。。
觀察了下頁面502的響應時長,發現每次都是30s過一點。猜測可能是服務器的配置文件設置了30s的超時時間,于是依次查找了nginx.conf,php-fpm.conf,php.ini(這三個文件原先使用默認配置)。發現nginx.conf里沒有30s的配置,php-fpm.conf和php.ini里都有30s的配置。最后實驗得出結論:只需要修改php-fpm.conf的request_terminate_timeout值就可以解決超時頁面顯示502的問題。
php-fpm.conf配置說明
; The timeout for serving a single request after which the worker process will
; be killed. This option should be used when the 'max_execution_time' ini option
; does not stop script execution for some reason. A value of '0' means 'off'.
; Available units: s(econds)(default), m(inutes), h(ours), or d(ays)
; Default Value: 0
request_terminate_timeout = 0
php.in配置說明
; Maximum execution time of each script, in seconds ; http://php.net/max-execution-time ; Note: This directive is hardcoded to 0 for the CLI SAPI max_execution_time = 30
總結
以上是生活随笔為你收集整理的php网站调试出现的简单问题,调试php时网站出现502的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: think php 缩放图片,THINK
- 下一篇: java 启动参数 配置,java程序启