worker_connections exceed open file resource limit: 1024
此警告的问题是受限于Linux的最大文件数限制
nginx.conf有设置文件数:10000
1、 修改/etc/security/limits.conf文件
添加下面信息
* soft noproc 65535
* hard noproc 65535
* soft nofile 65535
* hard nofile 65535
说明:用户,软限制/硬限制,限制选项,限制值
限制了任意用户的最大线程数和文件数为65535
2、修改/etc/pam.d/login文件,在文件中添加如下行:
session required /lib/security/pam_limits.so
告诉Linux在用户完成系统登录后,应该调用pam_limits.so模块来设置系统对该用户可使用的各种资源数量的最大限制(包括用户可打开的最大文件数限制),而pam_limits.so模块就会从/etc/security/limits.conf文件中读取配置来设置这些限制值
3、修改/etc/rc.local文件,在脚本中添加如下行
echo “65535"> /proc/sys/fs/file-max
Linux在启动完成后强行将系统级打开文件数硬限制设置为65535
4、验证
重启服务器
ulimit -a看看open files的值
cat /proc/<pid>/limits,pid可以用ps -ef | grep nginx 查看
粗暴的解决:ulimit -n xxxxx
转载请记录来源!!!!
https://www.cnblogs.com/leihongnu/