zoukankan      html  css  js  c++  java
  • linux服务器502错误详解【转载】

    最近公司网站频繁出现502错误,连接静态页没问题,只要连接数据库的网页就报502错误,经过查找终于找到原因了

    什么原因导致502错误?  在网上看了很多解决方法,在这里总结一下,如有错误,请指出,谢谢!

    1:php-cgi进程数不够用 (我就是采用此方法解决的)

    vim  php-fpm.conf

    修改其中的2个参数

    (1)在安装好使用过程中出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加

    这个数值是不确定的 需要我们自己算的,这个值原则上是越大越好,php-cgi的进程多了就会处理的很快,排队的请求就会很少,减小出现502错误的机率。

    一般来说,一台服务器的正常情况下每一个php-cgi要耗费的内存为20M左右。如果我就将此值设为80,那么也就是说大概要耗费服务器1600M内存。

    查看一下当前系统中有多少个php-cgi进程在运行

    netstat  -anpo  |  grep  php-cgi  |  wc -l

    如果这个值接近你的在配置文件里面设置的值,说明需要增加

    注:这要根据机器的实际情况而定,每个机器的硬件设施和环境不一样

    参数为:<value name=”max_children”>80</value>

    (2)另外一个参数就是php-cgi脚本的执行时间

    <value name=”request_terminate_timeout”>0s</value>这里写0s的意思是让php-cgi一直执行下去,没有时间限制。

    注意:如果你做不到这一点,也就 是说你的PHP-CGI可能出现某个BUG,或者你的宽带不够充足或者其他的原因导致你的PHP-CGI假死那么就建议你给 request_terminate_timeout赋一个值,这个值可以根据服务器的性能进行设定。一般来说性能越好你可以设置越高,20分钟-30分 钟都可以。

    修改完这两个参数,重启一下php-cgi,看是否还出现502错误

    2: php执行时间长

    php执行超时,修改/usr/local/php/etc/php.ini 将max_execution_time 改为300

    重启一下php-cgi,看是否还出现502错误

    3: php-cgi进程死掉

    杀死其进程,重启php-cgi

    原文地址:http://www.linuxidc.com/Linux/2013-05/84806.htm

  • 相关阅读:
    linux LTIB学习笔记
    wince WaitForMultipleObjects需要注意的问题
    微信小程序在苹果上出现[request:fail 发生了 SSL 错误无法建立与该服务器的安全连接。]错误的解决方案
    Windows 2008之PKI实战4:吊销
    十个不找工作的理由
    [zt]我奋斗了18年不是为了和你一起喝咖啡
    [zt]Java/PHP/C 几种语言 RSA 的互操作
    全职共享和兼职的一些思考pkill
    定价策略(翻译稿)
    Windows 2008之PKI实战1:管理
  • 原文地址:https://www.cnblogs.com/daly2008/p/3120911.html
Copyright © 2011-2022 走看看