调试php时网站出现502的解决方法 - Go语言中文社区

调试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

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/wzx19840423/article/details/52785969
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2019-08-27 20:23:46
  • 阅读 ( 1244 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢