nignx error_log 报 [alert] 27980#0: setrlimit(RLIMIT_NOFILE, 20480) failed (22: Invalid argument)

报错:
[alert] 27980#0: setrlimit(RLIMIT_NOFILE, 20480) failed (22: Invalid argument)

原因:
配置中参数设置超过unix或者linux最大文件开启个数

#user  nobody;
worker_processes  20;
#worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;
worker_rlimit_nofile 20480;

error_log   "/Users/wenzg/local/nginx/logs/error.log"   notice;
pid         "/Users/wenzg/local/nginx/var/nginx.pid";

events {
    #use epoll;
    worker_connections  20480; 
}

解决办法:
1、ulimit -n 先查看下,然后设置成一样的。
2、执行
ulimit -HSn 20480
重启php-fpm
再查看php-fpm日志
修改系统默认允许打开文件数使他永久生效
修改文件/etc/security/limits.conf
添加两行
* soft nofile 20480
* hard nofile 20480
设置为星号代表全局,这个当中的硬限制是实际的限制,而软限制,是warnning限制,只会做出warning

此条目发表在 nginx 分类目录。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*


*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>