无标题文档
wdCP系统 (介绍,功能特性,运行环境,安装说明,演示,常见问题,使用教程) wdCDN系统 (介绍,功能特性,运行环境,安装说明,演示,常见问题,使用手册)
wdOS系统 (介绍,功能特性,运行环境,安装说明,演示,常见问题,使用教程) wdDNS系统 (介绍,功能特性,运行环境,安装说明,演示,常见问题,使用手册)
注册 发贴 提问 回复-必看必看 wddns免费智能 DNS 开通 本地或虚拟机使 用wdcp 一键包在mysql编 译时"卡住"
【300G高防】双线 无视攻击 wdcp官方技术支持/服务 阿里云8折优惠券 无敌云 腾讯云优惠中,现注册更有260代金额券赠送
返回列表 发帖
提问三步曲: 提问先看教程/FAQ索引(wdcp,wdcp_v3,一键包)及搜索,会让你更快解决问题
1 提供详细,如系统版本,wdcp版本,软件版本等及错误的详细信息,贴上论坛或截图发论坛
2 做过哪些操作或改动设置等

温馨提示:信息不详,很可能会没人理你!论坛有教程说明的,也可能没人理!因为,你懂的

[求助] 关于504 php-fpm请admin看看

机器配置不错。网站是Wordpress的。访问几十IP,批量更新多内容的是必定504错误!
google和baidu都说修改php-fpm就能解决,但是WDCP我一直找不到php-fpm,admin之前说过的那个目录页找不到,说是lanmp是没有php-fpm的,是不是还要安装额外模块的?

因为baidu和google能解决504的人很多都是N+A的,但是都是说修改php-fpm就能解决。希望admin帮忙看看这个。

貌似论坛提到504的不止我一个人了。。。

谢谢!

再看看好像是要安装php-pfm模块的?不知道admin能否指点如何安装和配置?不知道直接安装加入到现有的WDCP中会不会引起其他问题或者风险。盼指点。谢谢!

TOP

我也出现这个问题,配置文件在/www/wdlinux/etc/下面,可以参照网上教程改设置。默认的设置不适合大流量

TOP

在N+A里,根本就用不到php-fpm
你可以调整下nginx.conf的部分参数
看清提问三步曲及多看教程/FAQ索引(wdcp,v3,一键包,wdOS),益处多多.wdcp工具集 阿里云主机8折优惠码

TOP

回复 4# admin


   N+A不一定是nginx把php请求转给apache的。可能是apache跑wdcp,nginx用fcgi调用php。php-fpm.conf里面一些参数,比如说最大进程,超时时间都可以调整大一点

TOP

什么叫N+A?

wdcp的apache是独立的,跟前端的web环境没关
看清提问三步曲及多看教程/FAQ索引(wdcp,v3,一键包,wdOS),益处多多.wdcp工具集 阿里云主机8折优惠码

TOP

什么叫N+A?

wdcp的apache是独立的,跟前端的web环境没关
admin 发表于 2012-4-13 12:01


也就是说WDCP里我用Nginx就是Nginx同时处理PHP的了?不是Nginx收到PHP请求的时候会转发给Apache处理?

意思是不管静态html之类的还是PHP之类的都是Nginx单独处理的? 之前用Lu以及LNMPA好像都是PHP会传递给后端的Apache的,所以以为WDCP也是。。。

TOP

回复  admin


   N+A不一定是nginx把php请求转给apache的。可能是apache跑wdcp,nginx用fcgi调用php。 ...
shcnmartin 发表于 2012-4-13 11:19



什么叫N+A?

再有,wdcp的后台是独立的,也就是后台的apache是独立的,跟前端的web环境没关
看清提问三步曲及多看教程/FAQ索引(wdcp,v3,一键包,wdOS),益处多多.wdcp工具集 阿里云主机8折优惠码

TOP

什么叫N+A?

wdcp的apache是独立的,跟前端的web环境没关
admin 发表于 2012-4-13 12:01



是只有wdcp后台才直接用apache的?那个人项目呢?是不是N转发给A来处理PHP请求?

TOP

这个跟个人项目或什么项目没什么关系

而跟用到哪个环境有关系
看清提问三步曲及多看教程/FAQ索引(wdcp,v3,一键包,wdOS),益处多多.wdcp工具集 阿里云主机8折优惠码

TOP

讨论都是没用的,给个最终504的解决办法啊,IP超过5万就挂了

TOP

有具体解决方案吗
http://www.bjjdwx.com

TOP

回复 4# admin

老大能不能给个具体的这个nginx.conf在什么问题之,需要修改哪几个参数?流量一大网站就挂了啊,需要重启服务器几次才解决,怎么办啊

TOP

完美解决Nginx 504 Gateway time-out
 最近用dedecms建的一个网站新增了大批内容,有三个栏目的内容量都超过了两千篇,超过两千三百篇的两个栏目在生成栏目列表的时候就出现了504 Gateway time-out 服务器用的是nginx,我不是很懂,服务器维护人员在网上随便找了一篇文章,修改了nginx的缓存设置,不管用,他就不管了,可是我不能不管啊,不能生成列表页面,那后面的内容不是都不能用了么?  把数据库下载到本地,在本地配置了nginx,试了很多遍,都不行,又改到Apache下面,更夸张,生成了83个页面就不能继续了,看来还是nginx更厉害一点,虽然出现504 Gateway time-out,但好歹能够全部生成。
  只好又继续在网上找更多的解决办法,尝试了N多次以后,终于让我找到了一个有用的方法,想想以后可能还有碰到这样的问题,就把那篇文章复制过来放在这里,供以后参考吧,对有同样问题的朋友也是一个帮助。
        下面部分是引用部分,我自己不懂技术的,在我的dedecms5.6里面有用,别人的自己尝试吧。

  Nginx 502 Bad Gateway的含义是请求的PHP-CGI已经执行,但是由于某种原因(一般是读取资源的问题)没有执行完毕而导致PHP-CGI进程终止。
  Nginx 504 Gateway Time-out的含义是所请求的网关没有请求到,简单来说就是没有请求到可以执行的PHP-CGI。
  解决这两个问题其实是需要综合思考的,一般来说Nginx 502 Bad Gateway和php-fpm.conf的设置有关,而Nginx 504 Gateway Time-out则是与nginx.conf的设置有关。
  而正确的设置需要考虑服务器自身的性能和访客的数量等多重因素。
  以我目前的服务器为例子CPU是奔四1.5G的,内存1GB,CENTOS的系统,访客大概是50人左右同时在线。
  但是在线的人大都需要请求PHP-CGI进行大量的信息处理,因此我将nginx.conf设置为:
  fastcgi_connect_timeout 300s;
  fastcgi_send_timeout 300s;
  fastcgi_read_timeout 300s;
  fastcgi_buffer_size 128k;
  fastcgi_buffers 8 128k;#8 128
  fastcgi_busy_buffers_size 256k;
  fastcgi_temp_file_write_size 256k;
  fastcgi_intercept_errors on;
  这里最主要的设置是前三条,即
  fastcgi_connect_timeout 300s;
  fastcgi_send_timeout 300s;
  fastcgi_read_timeout 300s;
  这里规定了PHP-CGI的连接、发送和读取的时间,300秒足够用了,因此我的服务器很少出现504 Gateway Time-out这个错误。最关键的是php-fpm.conf的设置,这个会直接导致502 Bad Gateway和504 Gateway Time-out。
  下面我们来仔细分析一下php-fpm.conf几个重要的参数:
  php-fpm.conf有两个至关重要的参数,一个是”max_children”,另一个是”request_terminate_timeout”
  我的两个设置的值一个是”40″,一个是”900″,但是这个值不是通用的,而是需要自己计算的。
  计算的方式如下:
  如果你的服务器性能足够好,且宽带资源足够充足,PHP脚本没有系循环或BUG的话你可以直接将”request_terminate_timeout”设置成0s。0s的含义是让PHP-CGI一直执行下去而没有时间限制。而如果你做不到这一点,也就是说你的PHP-CGI可能出现某个BUG,或者你的宽带不够充足或者其他的原因导致你的PHP-CGI能够假死那么就建议你给”request_terminate_timeout”赋一个值,这个值可以根据你服务器的性能进行设定。一般来说性能越好你可以设置越高,20分钟-30分钟都可以。由于我的服务器PHP脚本需要长时间运行,有的可能会超过10分钟因此我设置了900秒,这样不会导致PHP-CGI死掉而出现502 Bad gateway这个错误。
  而”max_children”这个值又是怎么计算出来的呢?这个值原则上是越大越好,php-cgi的进程多了就会处理的很快,排队的请求就会很少。设置”max_children”也需要根据服务器的性能进行设定,一般来说一台服务器正常情况下每一个php-cgi所耗费的内存在20M左右,因此我的”max_children”我设置成40个,20M*40=800M也就是说在峰值的时候所有PHP-CGI所耗内存在800M以内,低于我的有效内存1Gb。而如果我的”max_children”设置的较小,比如5-10个,那么php-cgi就会“很累”,处理速度也很慢,等待的时间也较长。如果长时间没有得到处理的请求就会出现504 Gateway Time-out这个错误,而正在处理的很累的那几个php-cgi如果遇到了问题就会出现502 Bad gateway这个错误。

TOP

如果用的NGINX 建议把进程和时间整大点 前几天我的服务器就是这样老出现502 504 每次一挂 我就重启web 结果还是要挂 后来修改了 时间和进程 后比以前好多了。

TOP

返回列表