Apache 和打开文件

Apache 和打开文件

我尝试过编辑/etc/security/limits.conf但是 Apache 需要 PAM 插件才能工作,对吗?

nobody soft nofile 40960000
nobody hard nofile 102400000
phpuser soft nofile 40960000
phpuser hard nofile 102400000
httpd soft nofile 40960000
httpd hard nofile 102400000
nginx soft nofile 40960000
nginx hard nofile 102400000
* soft nofile 40960000
* hard nofile 102400000

我尝试过设置

fs.file-max = 20970800
net.core.somaxconn = 1024000
kern.maxfilesperproc = 16638400
kern.maxfiles = 819200

在 sysctl.conf 中但仍然没有运气。

/etc/init.d/httpd我也有ULIMIT_MAX_FILES="ulimit -n 16384"

ulimit -n xxxxxx

这有效,但只是暂时的。安装 nginx 能解决这个问题吗?或者有办法让它起作用吗?

错误是:

[...] failed to open stream: Too many open files [...]

答案1

如果您使用的是 CentOS 附带的默认 httpd 和配置,Apache 将以用户 root 身份启动(因此它可以绑定到端口 80/443。将它们设置为 root,注销并重新登录,然后重新启动 apache。

相关内容