Una redirección 308 es un código de estado HTTP que indica una redirección permanente mientras preserva el método de solicitud original. Combina la semántica de permanencia de una 301 con la garantía de preservación de método de una 307. Si una solicitud POST recibe una respuesta 308, el navegador debe reenviar el POST a la nueva URL, y debe usar la nueva URL para todas las solicitudes futuras.
El código de estado 308 fue definido en el RFC 7538 para llenar un vacío en la especificación HTTP. Antes de la 308, no había forma de indicar una redirección permanente que preservara el método de solicitud. El código 301, aunque permanente, permitía a los navegadores cambiar las solicitudes POST a GET. El código 308 proporciona una solución limpia para escenarios que requieren tanto permanencia como preservación del método. Los libros sobre protocolos web en Amazon explican la especificación.
En la práctica, las redirecciones 308 se utilizan en el versionado de API, migraciones permanentes de endpoints y la aplicación de HTTPS donde las solicitudes POST deben preservarse. Para los servicios de acortamiento de URL, la 308 rara vez es necesaria ya que la mayoría de las redirecciones involucran solicitudes GET de la navegación del navegador.
El soporte de navegadores para la 308 es ahora universal en los navegadores modernos, aunque los clientes más antiguos pueden no manejarla correctamente. Al dirigirse a una audiencia amplia, es importante verificar que la población de clientes soporte la 308 antes de depender de ella. Los libros sobre compatibilidad de navegadores en Amazon discuten consideraciones de compatibilidad.