phpbar.de logo

Mailinglisten-Archive

[php] preg_match() erzeugt whitescreen bei langem Match

[php] preg_match() erzeugt whitescreen bei langem Match

Dr. Volker Göbbels goebbels at gmx.de
Die Okt 23 20:21:48 CEST 2007


Ahoi Norbert,

> es ist zwar schon mindestens ein Jahr her, dass ich mich mit  
> geziehlter
> Ueberschreitung der Provider-Limits beschaeftigt habe. Aber ich  
> kann Dir
> versichern, dass da absolut nix kommt, was der User auswerten koennte.
> Das Thema hatten wir damals auch hier komplett ausgelutscht ... ;-)

Ich verfolge die Diskussionen immer nur so mit einem Auge, ein Archiv  
hab ich nicht, so here you go ...
Ich hab aber ein paar Kunden, die erst nach Abschluß eines  
Providervertrags bei solchen Katastrophenläden wie Schottenhost oder  
Profihost zu mir gekommen sind.
Und dort erlebt man solche Quota-Kills schon mal häufiger. Sehr gern  
genommen zum Beispiel beim Abschließen einer Bestellung. Da jubelt  
der Shopinhaber ;)
Und dort, so wie überall, wo mir und anderen Leuten schon ein CGI  
Server weg gestorben ist, liefert der Apache einen 500er Error.

> Aber dass nix im php.error.log steht ist ja klar, Tote loggen nicht.

Das hätte cih auch nie behauptet, das wäre nämlich mit Verlaub ein  
wenitsch dämlitsch ;)

> Und ob und wie das Wegbrechen eines CGI-Prozesses von den  
> Massenhostern
> registriert wird, weiss ich nicht.

Warum sollte der Hoster da etwas registrieren? Das macht der  
Webserver für ihn, der hat nämlich grad nix anderes zu tun als auf  
den CGI Prozeß zu warten, der da gerade das Zeitliche gesegnet hat :->

> Den User lassen sie jedoch im Wald stehen. Nach deren Philosophie  
> ist das boesartig, wenn Du Ressourcen
> irgendwie ueberziehst und sie dafuer keine Rechnung stellen koennen.

Die Philosophie von Hostern hat damit rein gar nichts zu tun. Das  
entscheidet die Server-Implementierung, siehe hier:

http://cgi-spec.golux.com/draft-coar-cgi-v11-03-clean.html, Preable  
zu Kapitel 7, "Data Output from the CGI Script":

"Servers MAY implement a timeout period within which data must be  
received from scripts. If a server implementation defines such a  
timeout and receives no data from a script within the timeout period,  
the server MAY terminate the script process and SHOULD abort the  
client request with either a '504 Gateway Timed Out' or a '500  
Internal Server Error' response."

Was hier dann den Ausschlag gibt, ist beim Apache zum Beispiel das  
CGI-Error-Logging. Wenn da natürlich alles zu gezogen ist, bleibt das  
alles ziemlich stumm ...
Und normalerweise ist der Apache so gebaut, daß er auf stdout auch  
einen 500er wirft.

> Wie Du oder andere das auf ihren privaten Maschinen handhaben, spielt
> in diesem Falle sicher nur eine sehr untergeordnete Rolle.

Wo findest du in meiner Mail den Hinweis, daß ich von meiner  
Konfiguration rede?

Viele Grüße,
Volker Göbbels
-- 
Dr. Volker Göbbels
Arachnion GmbH & Co. KG, Sandkaulbach 4, 52062 Aachen
Geschäftsführer Dr. V. Göbbels, HR Aachen A 4674
http://www.arachnion.de, http://styleramblings.blogspot.com
Mitglied im BVSI e.V & Business-Club Aachen Maastricht



php::bar PHP Wiki   -   Listenarchive