301
Moved Permanently
Spezifikation von dem HTTP statuscode 301
Der 301 Moved Permanently-Statuscode zeigt an, dass der Zielressource ein neuer permanenter URI zugewiesen wurde und dass alle künftigen Verweise auf diese Ressource einen der beigefügten URIs verwenden sollten. Clients mit Link-Editing-Fähigkeiten sollten Verweise auf den effektiven Anfrage-URI automatisch mit einem oder mehreren der neuen, vom Server gesendeten Verweise neu verknüpfen, sofern dies möglich ist.
Der Server SOLLTE ein Location-Header-Feld in der Antwort erzeugen, das einen bevorzugten URI-Verweis für den neuen permanenten URI enthält. Der User-Agent KANN den Wert des Location-Feldes für die automatische Umleitung verwenden. Die Antwort-Payload des Servers enthält in der Regel eine kurze Hypertext-Notiz mit einem Hyperlink zu dem/den neuen URI(s).
Hinweis: Aus historischen Gründen KANN ein User-Agent die Request-Methode von POST auf GET für die nachfolgende Anfrage ändern. Wenn dieses Verhalten unerwünscht ist, kann stattdessen der Statuscode 307 (Temporary Redirect) verwendet werden.
Eine 301 Moved Permanently-Antwort ist standardmäßig cachefähig, d. h., sofern die Methodendefinition oder explizite Cache-Kontrollen nichts anderes angeben (siehe Abschnitt 4.2.2 von [RFC7234]).
Quelle / Zitat von: Spezifiziert wird der 301 Moved Permanently HTTP Status Code durch Abschnitt 6.4.2 von RFC7231
HTTP-Protokoll
Wie kann man mit PHP einen 301-Statuscode werfen?
Um auf einer Webseite den HTTP Status Code 301 zu werfen, kann die PHP Funktion http_response_code benutzt werden. Die Syntax sieht wie folgt aus: http_response_code(301) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Teste den 301 HTTP Status Code
Um die HTTP Status Code (in diesem Fall 301 Moved Permanently) und weitere Informationen clientseitig anzeigen zu können, muss die Entwicklungskonsole mit F12 geöffnet werden. Im Anschluss muss zu der Karteikarte "Netzwerk" navigiert werden. Jetzt kann die Seite geöffnet werden, im Netzwerktab sollte die Webseite (Beispiel index.php) zu sehen sein. Diese muss ausgewählt werden und im Anschluss der Bereich Herder gewählt werden. Hier sieht der Nutzer dann folgendes Ergebnis:
URL: https://http-statuscode.com/errorCodeExample.php?code=301
Status: 301 Moved Permanently
Diese: Network
IP-Adresse: XX.XX.XX.XX
Browser-Kompatibilität des 301 Statuscode
Chrome | Yes |
Edge | Yes |
Firefox | Yes |
Opera | Yes |
Safari | Yes |
Chrome Android | Yes |
Firefox for Android | Yes |
Opera Android | Yes |
Safari on iOS | Yes |
Internet | Yes |
WebView Android | Yes |
Konstanten in Programmiersprachen
HttpStatusCode.MovedPermanently
http.StatusMovedPermanently
Response::HTTP_MOVED_PERMANENTLY
httplib.MOVED_PERMANENTLY
http.client.MOVED_PERMANENTLY
http.HTTPStatus.MOVED_PERMANENTLY
:moved_permanently