Einige Artikel, die ich einmal gelesen habe, besagten, dass es bedeutet, zu springen (von einem URI zum anderen), aber ich habe dieses "302" entdeckt, selbst wenn es überhaupt kein Springen gab!
Eine 302-Umleitung bedeutet, dass die Seite vorübergehend verschoben wurde, während eine 301-Umleitung bedeutet, dass sie permanent verschoben wurde.
301s sind gut für den SEO-Wert, während 302s nicht, weil 301s Kunden anweisen, den Wert der ursprünglichen URL zu vergessen, während der 302 den Wert der ursprünglichen URL beibehält und somit den Wert möglicherweise reduzieren kann, indem zwei logisch getrennte URLs erstellt werden, die Jeder produziert den gleichen Inhalt (Suchmaschinen betrachten ihn als unterschiedliche Duplikate und nicht als einzelne Ressource mit zwei Namen).
Diese Frage wurde vor langer Zeit gestellt, als der RFC 2616 noch herumhing. Einige Antworten auf diese Frage basieren auf einem solchen Dokument, das heutzutage nicht mehr relevant ist. Zitat Mark Nottingham der zum Zeitpunkt des Schreibens den Vorsitz in den IETF-Arbeitsgruppen HTTP und QUIC innehat:
Verwenden Sie nicht RFC2616 . Löschen Sie es von Ihren Festplatten, Lesezeichen und brennen Sie alle ausgedruckten Kopien (oder recyceln Sie sie verantwortungsbewusst).
Der alte RFC 2616 wurde durch die folgenden Dokumente ersetzt, die zusammen das HTTP/1.1-Protokoll definieren:
Aus diesem Grund möchte ich eine Antwort auf der Grundlage von RFC 7231 bereitstellen. Dies ist die aktuelle Referenz für HTTP/1.1-Statuscodes.
302
StatuscodeEine Antwort mit 302
ist eine gebräuchliche Methode zur URL-Umleitung. Zusammen mit 302
Statuscode, die Antwort sollte einen Location
Header mit einer anderen URI enthalten. Solche Header werden vom Benutzerprogramm analysiert und führen dann die Umleitung durch:
Webbrowser können sich in der nachfolgenden Anforderung von POST
zu GET
ändern. Wenn dieses Verhalten unerwünscht ist, wird 307
(Temporäre Umleitung) Statuscode kann stattdessen verwendet werden.
So funktioniert das 302
Statuscode ist definiert in RFC 7231 :
Das
302
(Gefunden) Statuscode zeigt an, dass sich die Zielressource vorübergehend unter einem anderen URI befindet. Da die Umleitung gelegentlich geändert werden kann, sollte der Client die effektive Anforderungs-URI für zukünftige Anforderungen weiterhin verwenden.Der Server SOLLTE ein
Location
-Headerfeld in der Antwort generieren, das eine URI-Referenz für die verschiedenen URIs enthält. Das Benutzerprogramm KANN den FeldwertLocation
für die automatische Umleitung verwenden. Die Antwortnutzlast des Servers enthält normalerweise eine kurze Hypertextnotiz mit einem Hyperlink zu den verschiedenen URIs.Hinweis: Aus historischen Gründen KANN ein Benutzerprogramm die Anforderungsmethode für die nachfolgende Anforderung von
POST
inGET
ändern . Wenn dieses Verhalten unerwünscht ist, wird307
(Temporary Redirect) -Statuscode kann stattdessen verwendet werden.
Laut MDN-Webdokumente von Mozilla ein typischer Anwendungsfall für 302
ist:
Die Webseite ist vorübergehend aus nicht unvorhergesehenen Gründen nicht verfügbar. Auf diese Weise aktualisieren Suchmaschinen ihre Links nicht.
Der RFC 7231 definiert die folgenden Statuscodes für die Umleitung:
Der RFC 7238 wurde erstellt, um einen anderen Statuscode für die Umleitung zu definieren:
308
(Permanente Weiterleitung)Beziehen Sie sich auf diese Antwort für weitere Details.
Eine einfache Sichtweise auf HTTP 301-Weiterleitungen im Vergleich zu 302-Weiterleitungen lautet:
Angenommen, Sie haben ein Lesezeichen für " http://sample.com/sample ". Sie verwenden einen Browser, um dorthin zu gelangen.
Eine Weiterleitung zu einer anderen URL an dieser Stelle würde bedeuten, dass Sie Ihr Lesezeichen bei " http://sample.com/sample " belassen sollten. Dies liegt daran, dass sich die Ziel-URL in Zukunft möglicherweise ändert.
Eine 301-Weiterleitung zu einer anderen URL würde bedeuten, dass sich Ihr Lesezeichen so ändert, dass es auf die neue URL verweist, da es sich um eine permanente Weiterleitung handelt.
From RFC 2616 (die Hypertext Transfer Protocol-Spezifikation) :
10.3.3 302 Gefunden Die angeforderte Ressource befindet sich vorübergehend unter einer anderen URI. Da die Umleitung gelegentlich geändert werden kann, MUSS der Client Verwenden Sie den Request-URI weiterhin für zukünftige Anfragen. Diese Antwort Kann nur zwischengespeichert werden, wenn dies durch ein Cache-Control- oder Expires-Header-Feld Angezeigt wird. Der temporäre URI MUSS durch das Location-Feld im Antwort. Sofern die Anforderungsmethode nicht HEAD lautete, MUSS die Entität der Antwort Eine kurze Hypertextnotiz mit einem Hyperlink zu Der neuen URI (s) enthalten.
Quelle:
Gemäß http status code definitions zeigt ein 302 eine (temporäre) Umleitung an. "Die angeforderte Ressource befindet sich vorübergehend unter einem anderen URI"
302 ist eine Antwort, die eine Änderung des Ressourcenorts anzeigt - "Gefunden".
Die URL, unter der sich die Ressource jetzt befinden soll, sollte sich in der Kopfzeile der Antwort 'Location' befinden.
Der "Sprung" sollte vom anfordernden Client ausgeführt werden (stellen Sie eine neue Anforderung an die Ressourcen-URL im Feld für den Antwortspeicherort-Header).
In Bezug auf SEO sind 301 und 302 beide gut, es hängt von der Situation ab,
Wenn nur eine Version zurückgegeben werden kann (d. H. Die anderen leiten darauf weiter), ist das großartig! Dieses Verhalten ist vorteilhaft, da doppelte Inhalte reduziert werden. Im speziellen Fall von Weiterleitungen zu URLs mit nachgestellten Schrägstrichen wird in den Suchergebnissen wahrscheinlich die Version der URL mit dem Antwortcode 200 (meistens die URL mit nachgestellten Schrägstrichen) angezeigt - unabhängig davon, ob die Weiterleitung 301 oder 302 lautete.
Aus Wikipedia :
Der HTTP-Antwortstatuscode 302 Gefunden ist die häufigste Methode zum Ausführen einer Umleitung. Es ist ein Beispiel für eine industrielle Praxis, die der Norm widerspricht.
Der HTTP-Code 302 dient zur Weiterleitung (siehe http://en.wikipedia.org/wiki/HTTP_302 ).
Es weist das Durchsuchen an, eine Seite zu lesen, um an eine andere Stelle zu gehen und eine andere Seite zu laden. Seine Verwendung ist sehr verbreitet.
Gemäß RFC 1945/Hypertext Transfer Protocol - HTTP/1. :
302 Moved Temporarily
The requested resource resides temporarily under a different URL.
Since the redirection may be altered on occasion, the client should
continue to use the Request-URI for future requests.
The URL must be given by the Location field in the response. Unless
it was a HEAD request, the Entity-Body of the response should
contain a short note with a hyperlink to the new URI(s).
If the 302 status code is received in response to a request using
the POST method, the user agent must not automatically redirect the
request unless it can be confirmed by the user, since this might
change the conditions under which the request was issued.
Note: When automatically redirecting a POST request after
receiving a 302 status code, some existing user agents will
erroneously change it into a GET request.