Hostwinds Blog

Resultados da busca por:


307 redirecionamento temporário: o que é e quando/como usá -lo Imagem em destaque

307 redirecionamento temporário: o que é e quando/como usá -lo

por: Hostwinds Team  /  Março 29, 2024


O que é um código de status 307?

O redirecionamento temporário 307 é um código de status de resposta HTTP, indicando que o recurso solicitado (por exemplo, página da web) foi temporariamente desviado para um URL diferente.No entanto, diferentemente dos códigos de status de redirecionamento temporário semelhantes, como 302 (encontrado) ou 303 (ver outros), o cliente (por exemplo, navegador da Web) é instruído a continuar usando o mesmo método de solicitação HTTP para o novo URL que fez para a solicitação original.

Simplificando, quando um servidor envia um código de status 307 em resposta à solicitação de um navegador, significa que o recurso solicitado foi transferido temporariamente para outra URL.O navegador deve seguir o redirecionamento e usar o mesmo método de solicitação HTTP (como GET ou POST) usado para o URL original ao acessar o novo.

Quando usar o código de status 307

Há várias razões pelas quais um servidor deseja que o cliente (navegador) continue a usar o mesmo método de solicitação ao ser redirecionado para um novo URL, a maioria dos quais gira em torno da segurança e mantendo uma experiência consistente do usuário.

Aqui estão alguns cenários em que o código de status 307 pode ser efetivamente utilizado:

Autenticação e autorização: Quando um cliente envia uma solicitação para um recurso que requer autenticação ou autorização, o servidor pode responder com um código de status 307 junto com o URL da página de login ou autorização.Isso garante que o cliente reenvie a solicitação original (por exemplo, postagem) após a autenticação bem -sucedida sem alterar o método.

Envios de formulário: Em aplicativos da web onde os envios de formulários estão envolvidos, como comércio eletrônico Processos de checkout ou pesquisas on -line, se houver necessidade de redirecionar temporariamente o usuário (por exemplo, devido ao vencimento da sessão ou erros de validação), um código de status 307 pode ser usado para manter a integridade do método de envio de formulário.

Manutenção temporária do local ou tempo de inatividade: Durante a manutenção temporária ou o tempo de inatividade de um site, os servidores podem precisar redirecionar solicitações recebidas para uma página temporária.Ao usar um código de status 307, o servidor garante que o cliente siga o redirecionamento sem alterar o método HTTP, permitindo uma transição perfeita de volta ao recurso original assim que a manutenção estiver concluída.

Manipulando mudanças de localização de recursos: Se um recurso foi movido temporariamente para um local diferente no servidor ou em um servidor completamente diferente, mas espera -se que retorne ao seu local original no futuro, um código de status 307 pode ser usado para informar os clientes sobre a realocação temporária, preservando oMétodo de solicitação original.

Quando evitar o uso de 307 redirecionamentos

Embora os códigos de status 307 possam ajudar a manter a segurança e beneficiar a experiência do usuário, certamente não é um código de resposta a ser usado em todo o site.De fato, se não for usado no cenário certo, 307 redirecionamentos podem ter um impacto negativo na função do site e na experiência do usuário.

Aqui estão alguns exemplos de quando evitar um redirecionamento 307:

Alterações permanentes de URL: Os mecanismos de pesquisa interpretam 307 redireciona como temporária; portanto, se você pretende que o redirecionamento tenha efeitos de longo prazo em SEO, como passar o patrimônio link para o novo URL, um redirecionamento 307 pode prejudicar isso.

301 Redirecionar é o único código de status que deve ser usado quando a intenção é mover permanentemente um URL para outro.

Redirecionamentos em todo o local: O uso de 307 códigos de status para redirecionamentos em todo o local ou a granel pode afetar o desempenho do servidor, especialmente para sites de alto tráfego.O processamento de um grande número de redirecionamentos temporários pode confundir os recursos do servidor e diminuir os tempos de resposta do site, prejudicando o SEO e a experiência do usuário.

Sites que poderiam se beneficiar do uso de 307 redirecionar

Embora a maioria dos sites possa utilizar o código de status 307 por um motivo ou outro, existem poucos que se destacam:

Plataformas de comércio eletrônico: Os sites que envolvem carrinhos de compras, processos de checkout e contas de usuário podem se beneficiar de 307 redirecionamentos durante a autenticação, processamento de pagamentos ou manutenção temporária.

Aplicativos da web: Sites que oferecem serviços on -line, ferramentas de produtividade ou plataformas de colaboração podem usar 307 redirecionamentos para manter sessões de usuário, preservar envios de formulários ou lidar com a realocação temporária de recursos.

Serviços de associação ou assinatura: Os sites que exigem autenticação ou autorização do usuário, como sites de associação, plataformas baseadas em assinatura ou sistemas de gerenciamento de conteúdo, podem utilizar 307 redirecionamentos para gerenciar sessões de usuário e garantir o acesso contínuo a recursos protegidos.

Formulários e pesquisas online: Sites de hospedagem de formulários ou pesquisas que exigem entrada e submissão do usuário podem empregar 307 redirecionamentos para lidar com erros de validação, requisitos de autenticação ou interrupções temporárias enquanto preservam os dados submitidos pelo usuário.

Plataformas de mídia social: Plataformas com conteúdo gerado pelo usuário, recursos de mensagens ou elementos interativos podem se beneficiar de 307 redirecionamentos para manter o contexto da sessão, lidar com alterações temporárias de recursos ou gerenciar processos de autenticação sem interromper a experiência do usuário.

307 redirecionamento temporário vs. 307 redirecionamento interno

O termo "307 redirecionamento interno" vem surgindo como outro tipo de redirecionamento 307, especificamente ligado ao processo de direcionar navegadores da versão HTTP de um site para sua versão HTTPS.

Embora navegadores como o Chrome possam relatar o redirecionamento de HTTP para HTTPS como um "redirecionamento interno 307", a ação sugerida simplesmente não existe.

O termo "redirecionamento interno" normalmente se refere a um processo do lado do servidor em que um servidor web Redireciona internamente uma solicitação para outro recurso ou local dentro do mesmo servidor, sem que o cliente (navegador) esteja ciente do redirecionamento.No entanto, esse conceito não está ligado especificamente ao código de status 307;Pode ser aplicado a vários códigos de status HTTP, incluindo 307.

Simplificando, "307 redirecionamento temporário" e "307 redirecionamento interno" estão se referindo à mesma coisa, mas eles não estão associados ao redirecionamento do HTTP para HTTPS.

Os redirecionamentos de HTTP para HTTPs são normalmente implementados usando códigos de status como 301 (movidos permanentemente) ou 302 (encontrados), quando apropriado.

301 Redirecion é o código de status padrão usado para redirecionar permanentemente o tráfego HTTP para HTTPS.

A diferença entre 302, 303 e 307 redireciona

302, 303 e 307 são os três tipos de redirecionamentos temporários dentro do intervalo de código de status 3xx, cada um desempenhando uma função distinta ao processamento de obter e postar solicitações HTTP do cliente (navegador).

Esta seção se concentrará em como um cliente típico responderia a cada tipo de resposta temporária de redirecionamento, especificamente depois de fazer uma solicitação de postagem inicialmente.

get-post-request-temporary-redirect-process.webp
O que é um pedido de obter?

Uma solicitação GET é usada pelos navegadores para solicitar/recuperar uma página da Web de um servidor da Web.Se um usuário deseja visitar uma página da Web, por meio de um clique de link ou digitar um URL na barra de endereços, o navegador envia uma solicitação GET para o servidor da Web, solicitando que ele forneça a página da Web especificada.

O que é um pedido de postagem?

Uma solicitação de postagem ocorre quando o usuário interage com uma página da web enviando dados, como envio de formulário ou upload de arquivo, para o servidor da web.Esses dados são processados ou armazenados pelo servidor, permitindo que a página da web execute uma ação específica com base na entrada do usuário.

302 Redirecionar

Quando um cliente (navegador) encontra uma resposta 302 de um servidor da Web, ele segue uma solicitação GET para acessar o novo URL fornecido pelo servidor.Isso acontecerá independentemente de a solicitação original do cliente ter ou postar.

Isso pode causar problemas se o cliente enviou originalmente uma solicitação de postagem.

Por exemplo, se um usuário enviar informações, como um formulário de compra, usando uma solicitação de postagem e o servidor responder com um redirecionamento 302, o navegador enviará automaticamente uma solicitação GET.Como resultado, as informações da solicitação de postagem original podem não chegar ao servidor para processamento.

303 Redirecionar

Um redirecionamento 303 funciona de maneira semelhante a um redirecionamento 302, levando o cliente a acompanhar o método GET, independentemente do método de solicitação original.

No entanto, se a solicitação original for uma solicitação de postagem, uma resposta de redirecionamento 303 exige que o cliente solicite ao usuário que confirme a solicitação GET de acompanhamento antes de enviá-la para o servidor.

Também como 302 redirecionamentos, o uso de 303 redirecionamentos para páginas da web de envio de dados (por exemplo, preenchimentos de formulários e uploads de arquivos) pode resultar em dados fragmentados ou perdidos.

307 Redirecionar

Ao contrário dos redirecionamentos 302 e 303, 307 redirecionam preservam o método de solicitação original (Get ou Post) após o redirecionamento.Simplificando, uma solicitação de postagem permanece como uma solicitação de postagem e uma solicitação GET permanece como uma solicitação GET após o redirecionamento.

Isso faz com que 307 redirecionem a melhor opção para envio de dados para servidores da Web, pois garante a transferência segura e a entrega precisa das informações do cliente para o servidor.

4 maneiras de implementar 307 redirecionar

Existem vários métodos para implementar um redirecionamento de 307 para o seu site.O que funciona melhor para você dependerá do seu nível de conforto com a codificação e se você está executando ou não um CMS (WordPress, Drupal, Joomla, etc.).

Independentemente do método que você escolher, crie primeiro um backup do seu site ou pelo menos o arquivo em que você está trabalhando.Não podemos enfatizar o Importância do backup de dados, especialmente ao trabalhar dentro do arquivo .htaccess.

Usando o arquivo .htaccess

1. Acesse o arquivo .htaccess no diretório raiz do seu site.

2. Adicione a seguinte linha ao arquivo .htaccess:

Redirect 307 /old-page.html http://example.com/new-page.html

3. Substitua /old-age.html pelo URL antigo e http://example.com/new-page.html com o novo URL.

4. Salve as alterações no arquivo .htaccess e teste o redirecionamento.

Usando scripts do lado do servidor (PHP)

1. Crie um novo arquivo php (por exemplo, redirect.php) no seu servidor.

2. Adicione o seguinte código PHP ao arquivo:

<?php

header("HTTP/1.1 307 Temporary Redirect");

header("Location: http://example.com/new-page.html");

exit();

?>

3. Substitua http://example.com/new-page.html pelo URL para o qual deseja redirecionar.

4. Salve o arquivo e envie -o no seu servidor.

5. Acesse o arquivo no seu navegador para garantir que o redirecionamento esteja funcionando.

Usando a configuração do servidor (host virtual Apache)

1. Acesse o arquivo de configuração do seu servidor (por exemplo, httpd.conf ou apache2.conf).

2. Adicione as seguintes linhas dentro do bloco apropriado <v virtualhost> ou <Directory>:

Redirect 307 /old-page.html http://example.com/new-page.html

3. Salve as alterações no arquivo de configuração e reinicie o servidor Apache para aplicar as alterações.

4. Teste o redirecionamento acessando o URL antigo no seu navegador.

Usando plugins

Para sites que utilizam um CMS (sistema de gerenciamento de conteúdo), como o WordPress ou Weebly, a implementação de 307 redirecionamentos é tão fácil quanto fazê -lo através de um plug -in.

Encontre um plug -in que você goste, faça o download e simplesmente siga as instruções sobre como implementar o redirecionamento 307.

Escrito por Hostwinds Team  /  Março 29, 2024