308 Permanent Redirect

Repite la misma solicitud en una nueva URL permanente.

Cuándo usarlo

Como 301, pero el método y el cuerpo no deben cambiar.

A tener en cuenta

308 es la versión permanente de 307: los buscadores lo tratan como un 301 y transfieren las señales de posicionamiento, pero el método y el cuerpo no deben cambiar. Úsalo para endpoints de API que reciben POST, PUT o PATCH y se han movido definitivamente. Los navegadores lo almacenan en caché como un 301, así que se aplica la misma precaución: un 308 erróneo puede quedarse en los navegadores de los usuarios durante mucho tiempo.

Next.js responde con 308 a las redirecciones marcadas como permanentes y a la normalización de la barra final, lo que sorprende a quien revisa sus logs. Los clientes muy antiguos, como Internet Explorer 11 en Windows 7, no entienden 308; si todavía los atiendes, usa 301 para las páginas GET normales. Como el 301, un 308 se puede almacenar en caché por defecto, así que añade Cache-Control: max-age mientras sigas probando una redirección nueva.

Redirección (3xx)

Los códigos 3xx son redirecciones: el cliente tiene que ir a otro sitio, o usar su copia en caché, para completar la solicitud.

Cómo se ve

HTTP/1.1 308 Permanent Redirect

Cómo enviarlo

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

Cómo comprobarlo

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

Abrir Códigos de estado HTTP