Qual é a diferença entre HTTP 301
e 308
códigos de status?
301
(Movido permanentemente): essa e todas as solicitações futuras devem ser direcionadas ao URI fornecido.308
(Redirecionamento permanente): a solicitação e todas as solicitações futuras devem ser repetidas usando outro URI.
Eles parecem ser semelhantes.
http
http-status-code-301
http-status-codes
http-status-code-308
Alexander Drobyshevsky
fonte
fonte
Respostas:
Uma visão geral de
301
,302
e307
O RFC 7231 , a referência atual para semântica e conteúdo do protocolo HTTP / 1.1, define o código de status
301
(Movido permanentemente) e302
(Encontrado), que permite que o método de solicitação seja alterado dePOST
paraGET
. Essa especificação também define o307
código de status (Redirecionamento temporário) que não permite que o método de solicitação seja alterado dePOST
paraGET
.Veja mais detalhes abaixo:
A necessidade de
308
O RFC 7238 foi criado para definir o
308
código de status (Redirecionamento permanente), que é semelhante a301
(Movido permanentemente), mas não permite que o método de solicitação seja alterado dePOST
paraGET
.O
308
código de status agora é definido pelo RFC 7538 (que obsoleta o RFC 7238 ).Se temos o seguinte:
Escolhendo o código de status mais adequado
Michael Kropat montou um conjunto de gráficos de decisão que ajudam a determinar o melhor código de status para cada situação. Consulte o seguinte para
2xx
e3xx
códigos de status:fonte
POST
paraGET
" ? Significaria que um formulário postado não pode ser processado, mas um novo formulário novo poderia ser serverd e, em seguida, publicado em uma próxima solicitação?POST
solicitação (segura) seja alterada para uma paraGET
(insegura em que os dados são passados adicionando-os ao URL - e os URLs podem ser salvos - incluindo senhas) A solicitação pode ser um problema de segurança e geralmente deve ser evitada, a menos que você saiba que é seguro mudar. Atualmente, parece que geralmente é suportado e prefere usar 307, 308 em vez de 301, 302. Mas você deve verificar.308
é como um infinito lateral, portanto, o redirecionamento permanente e também nunca altera o método de solicitação - também é um tipo de solicitação fixo permanente. A seguir,307
veja o1
passo abaixo - Método de solicitação permanente / manutenção (Get / Post), mas redirecione para um local temporário: 7 - parece "curva à esquerda" ou desvio temporário, e 7 também é semelhante à k, portanto, "mantenha" o método de solicitação.