首页 > 代码库 > nginx 502

nginx 502

查过网上的资源,基本都是认为是php线程打开文件句柄受限导致的错误。具体的解决的办法如下:
 
1、提升服务器的文件句柄打开打开
/etc/security/limits.conf : (增加)
*    soft    nofile    51200
*    hard    nofile    51200
# vi /etc/security/limits.conf 加上
* soft nofile 51200
* hard nofile 51200
 
2、提升nginx的进程文件打开数
 
nginx.conf : worker_rlimit_nofile 51200;
 
3、修改php-fpm.conf文件,主要需要修改2处
 
命令 ulimit -n 查看限制的打开文件数,php-fpm.conf 中的选项rlimit_files 确保和此数值一致。
 
 <value name="max_requests">10240</value>
 
<value name="rlimit_files">51200</value>
 
4、
# vi /etc/sysctl.conf 
底部添加
fs.file-max=51200

完成以上修改,重启PHP,警告信息再也没了。
 
世界从此安宁,502 Bad Gateway 没有了。