HTTP 301-Statuscode
Die angeforderte Ressource wurde dauerhaft an einen neuen Speicherort verschoben und alle zukünftigen Verweise auf diese Ressource sollten einen von mehreren URIs verwenden, die mit dieser Antwort zurückgegeben werden. Wenn möglich, sollten Clients mit Linkbearbeitungsfunktionen die angeforderte Adresse automatisch in die vom Server zurückgegebene Adresse ändern. Sofern nicht anders angegeben, ist diese Antwort auch zwischenspeicherbar.
Der neue permanente URI sollte im Feld „Standort“ der Antwort zurückgegeben werden. Sofern es sich nicht um eine HEAD-Anfrage handelt, sollte die Antwortentität einen Hyperlink zum neuen URI und eine kurze Beschreibung enthalten.
Wenn es sich nicht um eine GET- oder HEAD-Anfrage handelt, verbietet der Browser die automatische Umleitung, es sei denn, der Benutzer bestätigt dies, da sich die Bedingungen der Anfrage entsprechend ändern können.
Hinweis: Bei einigen Browsern, die das HTTP/1.0-Protokoll verwenden, wird die nachfolgende Umleitungsanforderung zu einer GET-Methode, wenn die von ihnen gesendete POST-Anfrage eine 301-Antwort erhält.
Verwenden Sie PHP, um 301 zu implementieren:
<?php header("HTTP/1.1 301 Moved Permanently"); header("Location: http://www.xxx.com");
Was ist der Unterschied zwischen 302 und 301[Empfohlene Lektüre: HTTP 302 Statuscodes ]
301, 302 unterscheiden sich nicht von Benutzern. Sie sehen, dass der Effekt nur ein Sprung ist und die alte URL im Browser zu einer neuen URL wird. Die Seite springt dorthin, wo diese neue URL verweist. Bei Suchmaschinen und Webmastern kann es bei 302-Weiterleitungen zu Problemen mit der URL-Normalisierung und dem URL-Hijacking kommen. Dies kann von Suchmaschinen als verdächtige Weiterleitung oder sogar als Betrug gewertet werden.