¿Es seguro usar el estado HTTP 308 redireccionamiento permanente?

11

¿Es seguro usar el código de estado HTTP 308 redireccionamiento permanente ( sugerencia ) en las respuestas del servidor? El problema con 301 Moved Permanently es que solo funciona con solicitudes GET (para ser justos: POST se transformará en GET, que NO es una opción).

El código de estado es muy nuevo en "Tiempo de RFC", entonces, ¿qué sugeriría?

¿Qué haría un navegador si no conoce el 308? ¿Encontraría la ubicación y haría 302?

Burnersk
fuente
Más nuevo incluso de lo que parece darse cuenta; Es un RFC ahora .
Michael Hampton
1
¿Leyó la sección Consideraciones de implementación ?
Håkan Lindqvist
308 no es un estándar, es una propuesta, aún en la etapa experimental. Los navegadores deben recurrir a una interpretación 300 de cualquier error 301-399 que no entiendan específicamente.
Chris S
1
¿Bajo qué escenario esperaría recibir una solicitud POST enviada directamente a una URL desactualizada?
Skyhawk
1
@Skyhawk: Trabajo con funciones fuera de línea "de" html5. Para comentarios o crear nuevas publicaciones, la URL de destino puede haber cambiado debido a la modificación de la publicación en sus categorías.
burnersk

Respuestas:

4

Aunque 308 ahora es un estándar ( https://tools.ietf.org/html/rfc7538 ), actualmente no es Seguro [Editar] (a partir del 3 de abril de 2019), especialmente para aplicaciones de escritorio, pero puede ser casi seguro en algunos regiones específicas (por ejemplo, India), o para aplicaciones dirigidas a tabletas y dispositivos móviles.

La falta de seguridad se debe a que IE 11 en Windows 7 y 8.1 no lo admite. En IE 11, el sitio parece bloquearse. Afortunadamente, el IE que se incluye con Windows 10 lo admite, por lo que solo será un caso de espera hasta que el populoso general pase de Windows 7 (Win 7 solo ha sido superado por Win 10 en las estadísticas de uso global, Win 8 es significativamente menos popular que ambos) [Editar] o su empresa toma la decisión de dejar de admitirlo (lo cual puede ser muy convincente a partir del 14 de enero de 2020 cuando Windows 7 pierde incluso el soporte a largo plazo ).

Todos los demás navegadores modernos lo admiten (Chrome, Firefox, Safari, Edge, Opera).

[Editar] Estadísticas de uso de marzo de 2019 para ayudarlo a tomar su decisión:

  • 36.52% de los usuarios de escritorio todavía están en Windows 7
  • 9.83% de los usuarios de escritorio estaban en IE; como Win10 presionó tanto a Edge, asumiría que la mayoría de estos usuarios están en Win 7. Ref netmarketshare

Entonces, una decisión de usar 308 afectaría probablemente (mi estimación basada en las estadísticas anteriores) entre el 5 y el 9% de los usuarios de escritorio a partir de esta edición (3/4/2019). Si su aplicación está más orientada a tabletas / dispositivos móviles, este valor será significativamente menor. Del mismo modo, si su aplicación es específicamente para el mercado indio.

Puede probar si su navegador admite redireccionamientos 308 aquí: https://webdbg.com/test/308/

monty
fuente
Tenga en cuenta que esto es diferente de 307. IE 11 en Windows 7 es compatible con HTTP 307 sin problemas. (¿Por qué?)
Franklin Yu
7

https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/308

La propuesta RFC 7538 tiene un amplio apoyo hoy. Es seguro.

308 en lugar de 301. 307 en lugar de 302.

mover! = redirigir

Mover recuerda una dirección específica y / o archivo movido. Redirigir es una nueva ubicación o dirección.

perroud
fuente
1
A partir de ahora (20 de febrero de 2018) aún no es seguro debido a la cantidad de personas en Windows 7 que usan IE 11, que todavía no es compatible con esto.
monty
@monty, ¿cuál era ese número? ¿Qué pasa ahora?
Robin Winslow
A marzo de 2019, el 36.52% de los usuarios de computadoras de escritorio todavía usaban Windows 7 y el 9.83% de los usuarios de computadoras de escritorio usaban IE.
Monty
2

Para finalizar esto: No, no es seguro usar ese código de estado. Ver comentarios para más detalles.

308 no es un estándar, es una propuesta, aún en la etapa experimental. Los navegadores deben recurrir a una interpretación 300 de cualquier error 301-399 que no entiendan específicamente.

Algunos navegadores simplemente fallan por completo en ese código de estado.

Burnersk
fuente
1
Esta respuesta está desactualizada. Creo que el RFC ha sido aceptado y aceptado para su uso en los navegadores modernos developer.mozilla.org/en-US/docs/Web/HTTP/Status/308 . Sin embargo, si necesita soporte de navegadores antiguos, ¡esto puede ser un problema!
Yahya Uddin
3
No funciona en IE11 en Win8.1 y versiones inferiores (funciona en Win10).
Bart Verkoeijen
tools.ietf.org/html/rfc7538 "Código de estado del protocolo de transferencia de hipertexto 308 (redirección permanente)" publicado en abril de 2015.
Patrick Mevzek