解决Nginx 24 Too Many Open Files
首先运行:
1 | su -nginx |
然后运行:
1 | ulimit -Hn |
这几条命令可以查看软硬文件句柄和打开文件数目,然后我们就可以提升打开文件的数目. 编辑 /etc/sysctl.conf:
1 | vi /etc/sysctl.conf |
追加或者修改下面的行:
1 | fs.file-max = 70000 |
保存并关闭文件. 编辑 /etc/security/limits.conf:
1 | vi /etc/security/limits.conf |
修改成类似下面的样子:
1 | nginx soft nofile 10000 |
这里设置的就是软硬文件句柄和打开文件数目,保存关闭后运行sysctl命令:
1 | sysctl -p |
这样我们做的修改会即使生效. nginx也有类似的设置:
1 | vi /usr/local/nginx/conf/nginx.conf (视你的配置文件的位置而定) |
追加或者编辑:
1 | worker_rlimit_nofile 30000; |
保存并关闭文件,重新加载nginx配置,并重新执行开始查看软硬限制的命令:
1 | su - nginx |
最后设置nginx的一个参数:
1 | worker_rlimit_nofile 30000; |
这样我们就解决了Nginx: 24: Too Many Open Files这个错误.