308 Permanent Redirect

Répéter la même requête à une nouvelle URL permanente.

Quand l’utiliser

Comme 301, mais la méthode et le corps ne doivent pas changer.

Bon à savoir

308 est la version permanente de 307 : les moteurs de recherche le traitent comme un 301 et transfèrent les signaux de classement, mais la méthode et le corps ne doivent pas changer. Utilisez-le pour les points de terminaison d’API qui reçoivent des POST, PUT ou PATCH et ont déménagé définitivement. Les navigateurs le mettent en cache comme un 301, donc la même prudence s’impose : un 308 erroné peut rester longtemps dans les navigateurs des utilisateurs.

Next.js répond par un 308 pour les redirections déclarées permanentes et pour la normalisation du slash final, ce qui surprend à la lecture des logs. Les très vieux clients, comme Internet Explorer 11 sous Windows 7, ne comprennent pas 308 ; si vous les servez encore, utilisez 301 pour les pages GET simples. Comme un 301, un 308 peut être mis en cache par défaut : ajoutez Cache-Control: max-age tant que vous testez une nouvelle redirection.

Redirection (3xx)

Les codes 3xx sont des redirections : le client doit aller ailleurs, ou utiliser sa copie en cache, pour terminer la requête.

À quoi ça ressemble

HTTP/1.1 308 Permanent Redirect

Comment l’envoyer

Node.js / Expressres.redirect(308, '/new-url')
Python / Flaskreturn redirect('/new-url', code=308)
nginxreturn 308 https://example.com$request_uri;

Comment le vérifier

curl -s -o /dev/null -w "%{http_code}\n" https://example.com/

Ouvrir l’outil Codes de statut HTTP