¿Cuál es la diferencia entre HTTP 301
y los 308
códigos de estado?
301
(Movido permanentemente): esta y todas las solicitudes futuras deben dirigirse a la URI dada.308
(Redirección permanente): la solicitud y todas las solicitudes futuras deben repetirse utilizando otro URI.
Parecen ser similares.
http
http-status-code-301
http-status-codes
http-status-code-308
Alexander Drobyshevsky
fuente
fuente
Respuestas:
Una visión general de
301
,302
y307
El RFC 7231 , la referencia actual para la semántica y el contenido del protocolo HTTP / 1.1, define el código de estado
301
(Movido permanentemente) y302
(Encontrado), que permite cambiar el método de solicitud dePOST
aGET
. Esta especificación también define el307
código de estado (Redirección temporal) que no permite cambiar el método de solicitud dePOST
aGET
.Ver más detalles a continuación:
La necesidad de
308
El RFC 7238 se ha creado para definir el
308
código de estado (redireccionamiento permanente), que es similar a301
(movido permanentemente) pero no permite cambiar el método de solicitud dePOST
aGET
.El
308
código de estado ahora está definido por el RFC 7538 (que obsoleto el RFC 7238 ).Se tenemos lo siguiente:
Elegir el código de estado más adecuado
Michael Kropat reunió un conjunto de cuadros de decisiones que ayudan a determinar el mejor código de estado para cada situación. Consulte los siguientes códigos de estado
2xx
y3xx
:fuente
POST
aGET
" ? ¿Significaría que un formulario publicado no puede ser procesado, pero un nuevo formulario nuevo podría ser servidor y luego ser publicado en una próxima solicitud?POST
solicitud (segura) se cambie a aGET
(insegura en que los datos se pasan agregándola a la url, y las urls se pueden guardar - incluidas las contraseñas) puede ser un problema de seguridad y, por lo general, debe evitarse, a menos que sepa que es seguro cambiarlo. En estos días parece que generalmente es compatible y prefiere usar 307, 308 sobre 301, 302. Pero debe verificarlo.308
es como un infinito lateral, por lo que la redirección permanente, y nunca cambia el método de solicitud, también es un tipo de solicitud fijo y permanente. Luego, se307
muestra el1
paso a continuación: Método de solicitud permanente / mantener (Obtener / Publicar), pero redirigir a una ubicación temporal: 7 - parece "giro a la izquierda" o desvío temporal, y 7 también es similar a k, así que "mantenga" el método de solicitud