Welcher response code bei Datenbankverbindungsfail?
Theo Loge
- http-status
- php
0 Rolf B0 Der Martin
Hallo,
kurze Frage: Welcher http_response_code beschreibt das Scheitern einer Datenbankverbindung am besten? 500?
Danke, Theo.
Hallo Theo,
die Antwort lautet wie immer - kommt drauf an.
Wenn Du eine interne Admin-Seite hast, die den DB-Namen per URL Parameter bekommt, könnte auch ein 404 korrekt sein.
In den allermeisten Fällen ist aber ein 500er richtig, weil es ein internes Problem des Servers ist. Wenn es um eine geplante Datenbankwartung geht, mag auch ein 503 (Service Unavailable) passend sein.
Je nach den Umständen kann auch eine nette HTML Seite angemessen sein, die den Statuscode begleitet und den Anwender tröstet.
Wichtig ist nur, dem Anwender keine Fehlermeldung wie
"Verbindung zu foo_db@localhost, user xyz2384023, konnte nicht hergestellt werden". Sowas gehört gemeldet, ja, aber nur Dir, d.h. im Error-Log des Servers, den kein User sieht.
Rolf
n'Abend,
Welcher http_response_code beschreibt das Scheitern einer Datenbankverbindung am besten?
das hängt vom konkreten Einzelfall ab. Wenn deine Applikation trotz gescheiterter Datenbankverbindung noch eine halbwegs vernünftige Reaktion zustandebringt, z.B. die Aufforderung, man möge es bitte später noch einmal versuchen, neige ich zu 503.
500?
Nur wenn der Fehler so schwerwiegend ist, dass nicht einmal eine informative Fehlerseite generiert werden kann.
Einen schönen Tag noch
Martin