Internal Server Error

Suppi

Aktives Mitglied
Ich hab mal eine grundsätzliche Frage betreffend einem Fehler wie Internal Server Error 500. Sollten solche Sachen nicht durch einen gut konfigurierten Webserver abgefangen werden, bevor der Server selber abstürzt?
 
QUOTE (Suppi @ Sa 24.6.2006, 14:58)Ich hab mal eine grundsätzliche Frage betreffend einem Fehler wie Internal Server Error 500. Sollten solche Sachen nicht durch einen gut konfigurierten Webserver abgefangen werden, bevor der Server selber abstürzt?

@Suppi, jeder gute Programmierer weiß, daß er im Zweifelsfall die haarsträubendsten Fehler macht. Und in so einem Fall ist es besser, den Code crashen zu lassen und über die Fehler per Mail informiert zu werden, anstatt den Code weiterlaufen zu lassen und sich dann irgendwelche unlösbaren Inkonsistenzen einzuhandeln.

Wenn bsp. eine Suchmaschine einen 500 erhält, dann sollte sie im Normalfall nichts aufzeichnen - also wird auch nicht das falsche(Debuginformationen mit Passwörtern o.ä.) aufgezeichnet. Und die Serverkonfiguration sollte sicherstellen, daß externe Nutzer solche Debuginformationen niemals zu Gesicht bekommen.
 
QUOTE (jAuer @ Sa 24.6.2006, 17:15)@Suppi, jeder gute Programmierer weiß, daß er im Zweifelsfall die haarsträubendsten Fehler macht. Und in so einem Fall ist es besser, den Code crashen zu lassen und über die Fehler per Mail informiert zu werden, anstatt den Code weiterlaufen zu lassen und sich dann irgendwelche unlösbaren Inkonsistenzen einzuhandeln.


Ja, das ist klar. Nur was wenn das Problem beim Testen in einer htaccess auftaucht, und vielleicht sogar eine Endlosschlaufe produziert wird? Sollte dann der Server nicht in der Lage sein, das Problem zu erkennen und nicht gleich abstürzen?
 
QUOTE (Suppi @ Di 27.6.2006, 21:12)Ja, das ist klar. Nur was wenn das Problem beim Testen in einer htaccess auftaucht, und vielleicht sogar eine Endlosschlaufe produziert wird? Sollte dann der Server nicht in der Lage sein, das Problem zu erkennen und nicht gleich abstürzen?

Ich verwende zwar bei meinen Win2003-Servern keine htaccess.

Aber das Problem existiert ja allgemein: Wenn Programmcode (hier die htaccess) eine Dauerschleife erzeugen kann, dann müßte das ausführende Modul irgendeine Art von 'Laufzeitterminierung' definieren: 'If Laufzeit > 20 Sekunden then kill'.

Das Problem dabei ist nur: Wenn die htaccess bsp. einen 301 an den Browser zurücksendet, dann erzeugt ja der Browser einen zweiten Aufruf, der - für den Webserver - nichts mehr mit dem ersten Aufruf zu tun hat. Also kann der Webserver auch keine 20-Sekunden-Terminierung überwachen, weil jeder Einzelaufruf natürlich nach Sekundenbruchteilen abgearbeitet ist.

Folglich müßte man die Werte (301, 302), die zum Browser zurückgesendet werden, zunächst einmal bsp. über die Umleitung auf eine Sonderseite testen, die einem bsp. alle Laufzeitvariablen ausgibt.
 
Zurück
Oben