Ich habe Centos 7 mit httpd 2.4.6-45.el7.centos.4 und PHP 5.6.31Apache Pufferüberlauf mit zu vielen virtuellen Host
ich einen Pufferüberlauf, die erfasst wird, wenn ich versuche, um eine Webseite zu laden, sobald ich mehr als 1000 virtuelle Hosts besuche. Jeder virtuelle Host hat ein Fehlerprotokoll. Aber ich kann eine einfache phpinfo(), oder HTML-Seite laden.
Die einzige Optimierung, die ich gemacht habe, war in der Lage zu sein, httpd zu starten, ohne das No-File-Limit zu sprengen. (Ich war immer zu viele offene Dateifehler)
/etc/systemd/system/httpd.service.d/limits.conf
[Service]
LimitNOFILE=30000
Wenn ich die Anzahl der FD zählen hier/proc/16402/fd, ich habe 1051 Aber leider keine 1024 Grenzen, wenn ich überprüfen:
cat /proc/16402/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 256005 256005 processes
Max open files 30000 30000 files
Max locked memory 65536 65536 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 256005 256005 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us