NGINX出现500错误的常见解决

 
nginx出现500错误,不会显示具体错误信息。要到日志文件里面去看,通过yum安装的nginx的日志文件位于/var/log/nginx/error.log
 
 
(24: Too many open files)
 
日志文件里面出现类似(24: Too many open files)的错误信息,这是说明nginx太过于繁忙,打开文件的数量超过linux的系统限制。
 
解决办法
 
修改3个文件
 
/etc/security/limits.conf
 
增加
 
* soft nofile 51200
* hard nofile 65535
修改/etc/pam.d/login
 
增加
 
session required /lib/security/pam_limits.so
nginx.conf
 
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 51200;
 
events
{
  use epoll;
  worker_connections 51200;
}
然后重启服务器 ulimit -n 查看文件限制,应该显示51200
 
 
参考资料
linux ulimit max open files Nginx 0.7.x + PHP 5.2.8(FastCGI)搭建胜过Apache十倍的Web服务器(第4版)[原创]