点击登录
  • 欢迎访问无限星辰技术博客,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏无限星辰吧
  • 好集导航开张了,传送门:好集导航

php-cgi假死导致页面出现502 Bad gateway

LINUX服务器 crx349 7977次浏览 0个评论 扫描二维码

php-cgi进程数不够用、php执行时间长、或者是php-cgi进程死掉,都会出现502错误。

        1) .  php执行时间长 
如果服务器性能足够好,且宽带资源足够充足,PHP脚本没有系循环或BUG的话你可以直接将”request_terminate_timeout”设置 成0s。
php-fpm.conf  103行左右
  <value name=”request_terminate_timeout”>0s</value>
0s的含义是让PHP-CGI一直执行下去而没有时间限制。
而如果做不到这一点,也就是说你的PHP-CGI可能出现某个BUG,或者你的宽带不 够充足或者其他的原因导致你的PHP-CGI能够假死那么就建议你给”request_terminate_timeout”赋一个值,这个值可以根据你 服务器的性能进行设定。一般来说性能越好你可以设置越高,20分钟-30分钟都可以。由于我的服务器PHP脚本需要长时间运行,有的可能会超过10分钟因 此我设置了900秒,
<value name=”request_terminate_timeout”>900s</value>
这样不会导致PHP-CGI死掉而出现502 Bad gateway这个错误
       2)  php-cgi进程数不够用
         默认的php-cgi连接数如果在连接数很大的时候,默认的连接数配置限制会导致502的结果。
php-fpm.conf  79行左右
         <value name=”max_children”>256</value>
 补充个nginx+php-cgi的内存开销情况:
Nginx进程  每个进程数15M左右 有参数 worker_processes 来决定开启个数 一般8个就可以
php-cgi进程  每个消耗20M左右内存,看情况,一般128或者256,大内存机器512或者更高

这个数值根据机子的性能和php的执行消耗的系统性能来配置。


无限星辰 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明php-cgi假死导致页面出现502 Bad gateway!
喜欢 (0)
[]
分享 (0)

您必须 登录 才能发表评论!