301
Moved Permanently
Explication générale du code d'état 301
Le code d'état HTTP 301 Moved Permanently indique que la ressource demandée est disponible de manière permanente sous une nouvelle URL. Lorsqu'un client, comme un navigateur ou un moteur de recherche, reçoit cette réponse, il est automatiquement redirigé vers la nouvelle adresse. En même temps, le client mémorise la nouvelle URL afin que les futures demandes puissent y être envoyées directement. Ce code d'état est souvent utilisé lorsque des pages web sont restructurées ou que des contenus sont déplacés afin de garantir que les utilisateurs et les moteurs de recherche utilisent les chemins mis à jour. Pour l'utilisateur final, cela se passe généralement en arrière-plan, sans qu'il s'en aperçoive, car la redirection est automatique. D'un point de vue technique, la redirection 301 Moved Permanently est importante pour transférer les classements des moteurs de recherche et les accès vers les nouvelles URL, sans perdre les références existantes. Utilisé correctement, il est un outil utile pour la maintenance et l'optimisation des sites web.
Spécification du code d'état HTTP 301
Le serveur DEVRAIT générer un champ d'en-tête Location dans la réponse contenant une référence d'URI préférée pour le nouvel URI permanent. L'agent utilisateur PEUT utiliser la valeur du champ Location pour la redirection automatique. La charge utile de la réponse du serveur contient généralement une courte note hypertexte avec un lien hypertexte vers le(s) nouvel(aux) URI.
Note : Pour des raisons historiques, un agent utilisateur PEUT changer la méthode de demande de POST à GET pour la demande suivante. Si ce comportement n'est pas souhaité, le code d'état 307 (Redirection temporaire) peut être utilisé à la place.
Une réponse 301 Moved Permanently peut être mise en cache par défaut, c'est-à-dire, sauf indication contraire dans la définition de la méthode ou dans les contrôles explicites du cache (voir la section 4.2.2 de [RFC7234]).
Source / Citation de : Le code d'état HTTP 301 Moved Permanently est spécifié par la section 6.4.2 de RFC7231.
Protocole HTTP
Comment lancer un code d'état 301 avec PHP ?
Pour lancer le code d'état HTTP 301 sur une page web, on peut utiliser la fonction PHP http_response_code. La syntaxe est la suivante : http_response_code(301) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Teste le code d'état HTTP 301
Pour pouvoir afficher le code de statut HTTP (dans ce cas 301 Moved Permanently) et d'autres informations côté client, il faut ouvrir la console de développement avec F12. Ensuite, il faut naviguer vers l'onglet "Réseau". La page peut maintenant être ouverte, la page web (exemple index.php) doit être visible dans l'onglet réseau. Il faut la sélectionner et choisir ensuite le domaine Herder. L'utilisateur voit alors le résultat suivant :
URL: https://http-statuscode.com/errorCodeExample.php?code=301
Statut: 301 Moved Permanently
Ceux-ci: Network
Adresse IP: XX.XX.XX.XX
Compatibilité du navigateur avec le code d'état 301
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 |
Les constantes dans les langages de programmation
HttpStatusCode.MovedPermanently
http.StatusMovedPermanently
Response::HTTP_MOVED_PERMANENTLY
httplib.MOVED_PERMANENTLY
http.client.MOVED_PERMANENTLY
http.HTTPStatus.MOVED_PERMANENTLY
:moved_permanently