Ich habe versucht, es zu bearbeiten /etc/security/limits.conf
, aber Apache bräuchte dafür ein PAM-Plugin, oder?
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
Ich habe versucht,
fs.file-max = 20970800
net.core.somaxconn = 1024000
kern.maxfilesperproc = 16638400
kern.maxfiles = 819200
in sysctl.conf, aber immer noch kein Glück.
Habe ich auch im /etc/init.d/httpd
Set mitULIMIT_MAX_FILES="ulimit -n 16384"
ulimit -n xxxxxx
Das funktioniert, aber nur vorübergehend. Würde die Installation von nginx dieses Problem beheben oder gibt es eine Möglichkeit, dies zum Laufen zu bringen?
Der Fehler ist:
[...] failed to open stream: Too many open files [...]
Antwort1
Wenn Sie das Standard-HTTPD und die Konfiguration verwenden, die mit CentOS ausgeliefert werden, wird Apache als Root-Benutzer gestartet (damit eine Bindung an die Ports 80/443 möglich ist). Richten Sie sie für Root ein, melden Sie sich ab und wieder an und starten Sie Apache neu.