hotti: HTTP Status 'Fehlerhafte Konfiguration'

Beitrag lesen

Hi,

Wenn du willst, kannst du denen ja mehr Informationen über Art/Ursache des Fehlers mitgeben – entweder in Textform (der Text-Teil eines HTTP-Status-Headers nach dem Status-Code ist schließlich frei wählbar, du darfst als gerne "500 Hotti Fucked Up" senden), oder über zusätzliche X-Header ("X-Error-Caused-By: Misconfiguration of foo") – wobei hier dann natürlich die Frage bleibt, wie du das überhaupt feststellen willst, dass ein Script auf Grund einer fehlerhaften Konfiguration nicht arbeitet.

Dass wir noch ein paar weitere Informationen (X-Header) für einen nachgelagerten Escalationsprozess brauchen, ist klar.

Allerdings sollte dem Status-Text keinerlei Bedeutung beigemessen werden

Den Status-Text überlasse ich sowieso dem Server (ob der bei Status: 418 ein unused oder blah drangängt, ist mir egal). Nun, da die HTTP-Spec. für Konfigurationsfehler keinen speziellen Status vorsieht, stehe ich vor der Wahl: 500 oder 200

Eine fehlerhafte Konfig.: Z.B. hat ein Kollege vergessen das Template hochzuladen. Selbstverständlich wird das beim Request festgestellt, aber deswegen stirbt das Script nicht, es ergibt sich ein Status 200 (so ist das bisher).

– jegliche Übertragung von Fehlerinformation darüber müsste also zwischen Server und Client abseits von HTTP vereinbart worden sein.

Warum die Header nicht nutzen, Du schreibst das ja selbst.... s.w.o.

Und ob du diese Info überhaupt nach draußen geben willst/solltest, wäre auch noch zu überlegen.

Wenn sich ein Konfigurationsfehler eingeschlichen hat, sieht das jeder der schneller auf der Seite ist, als derjenige der prüft. Wir geben der Response mit:
Im Header => X-Class: TemplateFile
Im Body   => "Template nicht gefunden"

Das kann jeder sehen, der Besucher kann mit dem Namen der Klasse nichts anfangen (falls der in die Header guckt) und für denjenigen, der dafür zuständig ist, reichen diese Informationen (nur der Eskalationsmanager muss ein bischen mehr wissen).

Ein externer Dienst, der einen Service auf „läuft“ prüft, muss das eigentlich nicht wissen. Deine „Zuständigkeiten“ sollten auf der inneren Seite der Firmentür geklärt werden, nicht bereits außerhalb.

Bei Status: 500 wird gewöhnlich der Administrator aus seinen Träumen gerissen ;)

Schöne Grüße ;)