it-swarm.com.de

Sollte es beim Antworten mit einem HTTP 3xx-Umleitungsstatus noch einen Antworttext geben?

Wenn ein Dienst eine HTTP-Anfrage mit der Statuscode-Antwort "3xx Redirect" (und dem zugehörigen Standort-Header) beantwortet, sollte er dennoch einen aussagekräftigen Antworttext zusammen mit der Antwort senden?

Ich könnte mir vorstellen, dass eine Seite mit einem Link zum Umleitungsziel hilfreich sein könnte, wenn der Benutzeragent die Umleitung nicht ordnungsgemäß handhaben kann. Ist es überhaupt realistisch anzunehmen, dass dies passieren könnte? Andererseits könnte das Senden eines leeren Antworttextes eine gute Gelegenheit sein, um ein wenig Verkehr zu sparen ...

Jeder Rat ist willkommen.

6
MRA

Eigentlich habe ich gerade eine Antwort auf meine eigene Frage gefunden, die im relevanten RFC 72 (oder dessen Vorgänger RFC 2616 ) behandelt wurde, z. in der Beschreibung des Statuscodes "303 See Other":

Mit Ausnahme von Antworten auf eine HEAD -Anforderung sollte die Darstellung einer 303-Antwort eine kurze Hypertextnotiz mit einem Hyperlink zu derselben URI-Referenz enthalten, die im Feld "Standortheader" angegeben ist.

Im Wesentlichen wird für alle Statuscodes der 3xx-Familie derselbe Hinweis gegeben.

8
MRA

Die Antwort lautet definitiv Ja, um so viele Webbrowser wie möglich zu unterstützen. Es gibt wahrscheinlich einen Webbrowser, der an dem Tag erstellt wurde, an dem jemand den Standort-Header-Tag nicht unterstützt.

Auf dem Apache-Server hat die Standard-301-Umleitungsnachrichtenseite den folgenden HTML-Code:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://www.website.com/">here</a>.</p>
</body></html>

und die Ausgabe wird dauerhaft in großen Buchstaben mit "Das Dokument wurde hierher verschoben" unter dem Wort "hierher" als Hyperlink zur neuen Seite verschoben.

3
Mike

Das Hinzufügen eines Links zu einer Zielseite wird traditionell in Seiten verwendet, die einen Aktualisierungsheader verwenden, um Benutzer umzuleiten. Dies ist nicht optimal und nicht dasselbe wie eine herkömmliche 301-Umleitung, die für den Benutzer transparent ist. Wenn Sie HTML als Teil der 301-Umleitung angegeben haben, wird es wahrscheinlich nicht angezeigt. Auch für mögliche Weiterleitungen besteht diese Möglichkeit nicht, wie im Fall der Verwendung einer .htaccess-RewriteRule.

2
closetnoc

Obwohl ein Antworttext nicht benötigt wird (und von Browsern normalerweise ignoriert wird), ist es hilfreich, wenn Personen, die Links verwalten, wissen, warum eine Ressourcen-URL geändert wurde. Wenn Sie eine Erklärung in den Antworttext einfügen, aktualisieren die Personen, die auf die ursprüngliche Seite verlinkt haben, hoffentlich ihre Links.

2
Brent Washburne

AdBlock oder ein anderes Plugin hat dazu geführt, dass einige Weiterleitungen für mich in meinem Browser nicht automatisch ausgeführt wurden. Dies war normalerweise kein Problem, da die Umleitung normalerweise eine Seite enthält, auf die geklickt werden kann. Es gab einige Weiterleitungsdienste, die die Seite nicht enthielten, und es war ärgerlich.

Die meisten Benutzer werden diesen Inhalt nie sehen, aber es gibt Situationen, in denen er nützlich ist.

2