Was ist der Unterschied zwischen HTTP- 301
und 308
Statuscodes?
301
(Permanent verschoben): Diese und alle zukünftigen Anforderungen sollten an die angegebene URI gerichtet werden.308
(Permanente Weiterleitung): Die Anforderung und alle zukünftigen Anforderungen sollten unter Verwendung einer anderen URI wiederholt werden.
Sie scheinen ähnlich zu sein.
http
http-status-code-301
http-status-codes
http-status-code-308
Alexander Drobyshevsky
quelle
quelle
Antworten:
Eine Übersicht über
301
,302
und307
Die RFC 7231 , die Stromreferenz für die Semantik und den Inhalt der HTTP / 1.1 - Protokolls, definiert den
301
(fest verschoben) und302
(gefunden) Statuscode, der die Anforderung von Verfahren erlaubt geändert werden ,POST
umGET
. Diese Spezifikation definiert auch den307
Statuscode (Temporäre Umleitung), mit dem die Anforderungsmethode nicht vonPOST
nach geändert werden kannGET
.Weitere Details finden Sie unten:
Der Bedarf an
308
Der RFC 7238 wurde erstellt, um den
308
Statuscode (Permanent Redirect) zu definieren, der (Permanent301
verschoben) ähnlich ist, jedoch keine Änderung der Anforderungsmethode vonPOST
nach zulässtGET
.Der
308
Statuscode wird jetzt vom RFC 7538 definiert (der den RFC 7238 überholt hat ).Se wir haben das folgende:
Auswahl des am besten geeigneten Statuscodes
Michael Kropat hat eine Reihe von Entscheidungsdiagrammen zusammengestellt , mit deren Hilfe der beste Statuscode für jede Situation ermittelt werden kann. Siehe folgende für
2xx
und3xx
Statuscodes:quelle
POST
umGET
“ ? Würde dies bedeuten, dass ein veröffentlichtes Formular nicht verarbeitet werden kann, ein neues Formular jedoch möglicherweise auf dem Server gespeichert und bei einer nächsten Anfrage veröffentlicht wird?POST
(Safe) Anfrage wird geändert in eine zuGET
, dass Daten (unsicher wird durch Zugabe zu der URL übergeben - und Urls kann gespeichert werden - einschließlich Passwörtern) kann ein Sicherheitsproblem darstellen und sollte im Allgemeinen vermieden werden, es sei denn, Sie wissen , dass Änderungen sicher sind. Heutzutage scheint es allgemein unterstützt und bevorzugt zu werden, 307, 308 gegenüber 301, 302 zu verwenden. Sie sollten dies jedoch überprüfen.308
ist wie eine seitliche Unendlichkeit, also permanente Umleitung, und ändern Sie niemals die Anforderungsmethode - es ist auch ein permanenter, fester Anforderungstyp. Dann307
ist1
Schritt unten - permanente / Keep-Anforderungsmethode (Get / Post), aber Weiterleiten an einen temporären Ort: 7 - sieht aus wie "Linkskurve" oder temporärer Umweg, und 7 sieht auch ähnlich aus wie k, also "behalten" Sie die Anforderungsmethode.