我遇到配置错误而且我已经在线研究过,但我不太清楚问题是什么。我想在os x 10.7.5操作系统上安装PHP和Nginx。每当我尝试启动或停止服务器时,我都会收到以下错误:
tone$ nginx
nginx: [warn] 1024 worker_connections exceed open file resource limit: 256
alcfwl128:~ tolbert$ nginx: [emerg] open() "/usr/local/Cellar/nginx/1.4.3/logs/nginx.pid" failed (2: No such file or directory)
nginx -s stop
nginx: [error] open() "/usr/local/Cellar/nginx/1.4.3/logs/nginx.pid" failed (2: No such file or directory)
对于第一个错误,我尝试了以下命令:tone$ ulimit -n 65536
但我收到此错误:-bash: ulimit: open files: cannot modify limit: Invalid argument
我不确定我是否要在目录中创建日志文件夹以及nginx.pid文件,或者它是否位于其他位置。感谢您的帮助。
答案 0 :(得分:34)
在您的终端试试这个:
ulimit -a
结果应该与此类似:
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 256
pipe size (512 bytes, -p) 1
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 709
virtual memory (kbytes, -v) unlimited
在您的情况下,要将打开文件限制增加到1024,请使用以下代码:
ulimit -n 1024
运行sudo nginx -t
进行检查,希望您再次看不到错误
答案 1 :(得分:9)
在主要部分添加到nginx.conf
:
worker_rlimit_nofile 1024;
答案 2 :(得分:0)
同意lifecomm's解决方案,可以更好地针对特定的nginx问题:
worker_rlimit_nofile更改工作进程最大打开文件数(RLIMIT_NOFILE)的限制。用于增加限制而无需重新启动主进程。