Jan-Philipp Litza

PHPs memory_limit nutzlos?

Soeben ist der Server gecrasht, das zweite Mal seit er existiert, das zweite Mal in kurzer Zeit. Der Grund war aber ein vollkommen anderer: Ein amoklaufendes Script, das ein Bild auf 10000x100000 vergrößern wollte – und dabei nen OOM ausgelöste, der das ganze System mitriß.

Nun frage ich mich in erster Linie, wieso die memory_limit Einstellung der php.ini, die brav auf 16 MB gestellt ist, absolut nicht gegriffen hat. Ich hatte schon das FCGI-Setup o.Ä. in Verdacht, aber auch hier aufm Laptop (mit mod_php) sind PHP die memory limits total egal und ich konnte das Script nur schwer killen.

Was zur Hölle soll das? Zeigt das nur mal wieder, dass PHP Schrott ist und jegliche eingebaute Sicherheitsmaßnahmen fürn Arsch? Oder übersehe ich da irgendwas?

Nächste Frage ist natürlich, wieso der Linux Kernel nicht ordentlich mit dem Script umgehen konnte. Laut Logs hat der den OOM auch registriert und irgendwas dagegen getan – aber scheinbar nicht sonderlich effektiv.