Redirects 301: quando usar, como configurar e como verificar
Um 301 avisa navegadores e buscadores que uma URL mudou de vez. Este guia cobre os tipos de redirect e como o Google trata cada um, as quatro versões de host que todo site deve unificar, cadeias e loops, exemplos de servidor para Apache, Nginx e Next.js e como corrigir cada problema apontado por um verificador de redirects.
Searvia · 24/10/2026 · Leitura de 15 min
Resumo: Um redirect 301 avisa navegadores e mecanismos de busca que uma URL foi movida de forma permanente. O Google trata 301 e 308 como um sinal forte de que o destino deve ser a URL canônica; 302 e 307 são temporários e mantêm a URL antiga. Todo site deve responder em um único endereço:
http://,https://,wwwe semwwwprecisam redirecionar para a mesma URL final, em um único salto. Mantenha os redirects por pelo menos um ano, atualize os links internos para o endereço final e verifique a cadeia inteira, não só onde ela termina.
Quando funcionam, os redirects são invisíveis. Quando não funcionam, os sintomas são vagos: o ranqueamento se divide entre www e sem www, uma migração perde tráfego por meses, a página inicial demora um segundo a mais para carregar porque passa por três endereços. A maioria desses problemas pode ser encontrada em um minuto, seguindo cada versão do seu endereço até o fim.
Este guia cobre os tipos de redirect e como o Google os trata, as versões de host que todo site precisa unificar, cadeias e loops, a configuração nos servidores mais comuns, como funciona o nosso verificador de redirects gratuito e como corrigir cada problema que ele relata.
O que é um redirect
Um redirect é uma resposta que diz "este recurso está em outro lugar" e informa o novo endereço no cabeçalho Location. O navegador solicita o novo endereço automaticamente. Um redirect no servidor aparece assim na requisição:
HTTP/1.1 301 Moved Permanently
Location: https://www.example.com/new-page
O código de status diz aos clientes como tratar a mudança. A MDN separa os redirects em permanentes, após os quais os crawlers "will update the original URL" (atualizam a URL original), e temporários, que os crawlers "don't memorize" (não memorizam).
| Código | Significado | Método em requisições não GET | Como o Google trata | Quando usar |
|---|---|---|---|---|
| 301 | Moved Permanently | Alguns clientes mudam POST para GET | Permanente: o destino vira canônico | Páginas movidas, hosts unificados, HTTP para HTTPS |
| 308 | Permanent Redirect | Método e corpo preservados | Permanente | Igual ao 301; também formulários e APIs |
| 302 | Found | Alguns clientes mudam POST para GET | Temporário: a origem pode continuar nos resultados | Mudanças de curto prazo, testes A/B |
| 303 | See Other | Alterado para GET | Temporário | Após o envio de um formulário |
| 307 | Temporary Redirect | Método e corpo preservados | Temporário | Mudanças de curto prazo com requisições não GET |
A documentação de redirects do Google também classifica um meta refresh instantâneo (0 segundo) e uma mudança de location em JavaScript como permanentes, e um meta refresh com atraso como temporário. Ela recomenda redirects permanentes no servidor sempre que possível e diz para "only use JavaScript redirects if you can't do server-side or meta refresh redirects" (usar redirects em JavaScript apenas se não for possível fazer no servidor ou com meta refresh), porque a renderização pode falhar.
Por que os redirects importam para SEO
Eles consolidam duplicatas. O guia de canonicalização do Google lista os redirects como "a strong signal that the target of the redirect should become canonical" (um sinal forte de que o destino do redirect deve se tornar canônico). Sem eles, sinais como links podem ficar divididos entre várias URLs com o mesmo conteúdo.
Eles levam as páginas movidas por uma migração. Quando as URLs mudam, um 301 de cada URL antiga para a nova equivalente diz ao Google para trocá-las no índice e leva quem chega por links antigos à página certa.
Eles protegem o HTTPS. O Google "prefers HTTPS pages over equivalent HTTP pages as canonical" (prefere páginas HTTPS a páginas HTTP equivalentes como canônicas), e o mesmo guia lista o redirect de HTTP para HTTPS como uma forma de reforçar isso.
Eles custam tempo. Cada salto é mais uma ida e volta antes de a página começar a carregar. Em redes móveis, uma cadeia de três redirects é um atraso perceptível antes de qualquer coisa aparecer.
Um site, um endereço
Para um crawler, estes são quatro sites diferentes, mesmo que mostrem a mesma página:
http://example.com/
http://www.example.com/
https://example.com/
https://www.example.com/
Escolha um, normalmente a versão HTTPS com ou sem www, e faça as outras três responderem com um único 301 direto para ele. A escolha entre www e sem www é questão de gosto; o que importa é que apenas uma versão responda com 200. Verifique também se o certificado TLS cobre example.com e www.example.com, ou o redirect de https://www falha antes de ser executado.
A mesma regra vale dentro do site: se /pricing e /pricing/ respondem 200, escolha uma forma e redirecione a outra.
Cadeias e loops
Uma cadeia é um redirect que leva a outro redirect. A mais comum é quando protocolo e host são tratados em etapas separadas:
http://www.example.com/ 301 → https://www.example.com/ 301 → https://example.com/
Os crawlers do Google "follow up to 10 redirect hops" (seguem até 10 saltos de redirect) (HTTP status codes and Google Search), então uma cadeia de dois saltos não faz a página se perder. Mas o guia de mudança de site do Google diz para "avoid chaining redirects" (evitar encadear redirects) e redirecionar "to the final destination directly" (diretamente para o destino final); se isso não for possível, mantenha as cadeias curtas, "ideally no more than 3 and fewer than 5" (idealmente no máximo 3 e menos de 5). Os visitantes pagam por cada salto de qualquer maneira.
Um loop é uma cadeia que nunca termina: A redireciona para B e B de volta para A, geralmente porque uma regra de HTTPS no servidor e outra na CDN entram em conflito. A MDN observa que os navegadores detectam loops e mostram um erro, então a página simplesmente fica inacessível.
Como configurar um redirect 301
Apache (.htaccess ou virtual host), unificando todas as versões em https://www.example.com:
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
Para uma única página, Redirect 301 /old-page https://www.example.com/new-page basta. Observe que um Redirect simples, sem código, envia um 302 por padrão, segundo a MDN.
Nginx, com um bloco server capturando todas as outras versões:
server {
listen 80;
listen 443 ssl;
server_name example.com www.example.com;
# ssl_certificate lines here for the 443 listener
if ($host = example.com) { return 301 https://www.example.com$request_uri; }
if ($scheme = http) { return 301 https://www.example.com$request_uri; }
# ... the site itself
}
Muitas configurações usam blocos server separados; qualquer uma funciona, desde que cada versão chegue ao endereço final em uma única etapa.
Next.js, em next.config.js:
module.exports = {
async redirects() {
return [
{ source: '/old-blog/:slug', destination: '/blog/:slug', permanent: true },
]
},
}
A documentação do Next.js informa que permanent: true envia um 308 e permanent: false um 307, para preservar o método da requisição. O Google trata o 308 como permanente, então não há problema.
CDNs e hospedagens. A maioria das CDNs e dos painéis de hospedagem oferece regras de redirect e uma opção "sempre usar HTTPS". Use uma camada para cada função: se a CDN converte HTTP em HTTPS e o servidor de origem também redireciona hosts, você tem uma cadeia de dois saltos, ou um loop se as duas discordarem.
WordPress. O endereço do site em Configurações › Geral define o host canônico; o WordPress redireciona os outros hosts para ele. Para redirects de páginas, use um plugin de redirect ou o gerenciador de redirects do seu plugin de SEO, e prefira regras no servidor para unificar o host.
Como funciona o verificador de redirects da Searvia
O verificador de redirects usa o mesmo mecanismo do nosso verificador de SEO de sites: você informa um domínio e ele audita a página inicial e os arquivos ao redor com 38 verificações em cerca de 20 segundos, mostrando primeiro as três verificações que são o foco desta ferramenta. Veja o que elas fazem.
Redirects e versões duplicadas (prioridade média). O verificador pega o domínio informado, remove o www. e abre quatro endereços: http:// e https://, cada um com e sem www. Ele segue cada um por até seis redirects e registra onde termina e o código de status de cada salto. Uma versão passa se terminar no mesmo esquema e host do endereço final da sua página inicial usando apenas redirects permanentes (301 ou 308). O resultado:
- Falha se alguma versão terminar em outro lugar, por exemplo
https://example.comrespondendo com a própria página enquantohttps://www.example.comé o seu site principal, ou se uma versão terminar em um loop de redirect ou precisar de mais de seis redirects. - Alerta se alguma versão usar um redirect temporário (302, 303 ou 307), ou se o endereço informado precisar de mais de um salto, contado a partir de
https://mais o host informado, antes de responder. - Aprovado se todas as versões chegarem ao mesmo site com redirects permanentes e o endereço principal precisar de um salto ou nenhum.
O relatório lista cada uma das quatro versões com a URL final, os códigos de redirect no caminho (por exemplo 301 › 301) e um check ou um X. Versões que não resolvem ou não podem ser acessadas, por exemplo um host www sem registro DNS, são deixadas de fora em vez de reprovar.
HTTPS (prioridade alta). Ele solicita http:// mais o seu host sem seguir redirects. Passa se o site funcionar em HTTPS e a requisição HTTP responder com um 3xx cujo Location comece com https://. Falha com "HTTP does not redirect to HTTPS" ou "The site does not work over HTTPS." Se o HTTP simples não responder, o redirect não pode ser testado, e a verificação mostra uma observação em vez de aprovação ou falha.
Status da página (prioridade alta). A página final deve responder com status 2xx. Um 4xx ou 5xx reprova.
O que ele não testa
- Meta refresh e redirects em JavaScript. Apenas redirects HTTP são seguidos. Uma versão que redireciona com uma meta tag aparece como terminando nela mesma.
- Páginas internas. Somente os endereços da página inicial são testados. Para redirects de páginas após uma migração, faça o crawl da lista de URLs antigas.
- Contagem de saltos por versão. O alerta de saltos conta apenas os saltos do seu endereço principal; uma cadeia permanente de dois saltos em
http://wwwmostra os códigos na tabela (301 › 301), mas não reduz o resultado. Usecurlpara ver a URL de cada salto.
Para ver cada salto com sua URL e código:
curl -sIL http://www.example.com/ | grep -iE '^(HTTP|location)'
Como ler o resultado
| Mensagem | O que significa | Correção |
|---|---|---|
| All versions of the address lead to one URL. | Toda versão acessível termina no seu site principal com redirects permanentes | Nenhuma |
| Some versions of the address do not redirect to the main one. | Pelo menos uma versão responde por conta própria ou termina em outro lugar | Passo 1 |
| N versions use a temporary redirect (302, 303 or 307); use a permanent 301 or 308. | Um salto no caminho é temporário | Passo 6 |
| URL ends in a redirect loop. / URL goes through more than 6 redirects. | Uma versão nunca chega a uma página | Passo 6 |
| The address goes through N redirects; link to the final address. | Seu endereço principal passa por mais de um redirect | Passo 2 |
| HTTP does not redirect to HTTPS. | O HTTP simples responde com uma página em vez de redirecionar | Passo 3 |
| The site does not work over HTTPS. | Não há resposta HTTPS funcionando | Passo 4 |
| The page answers with status N. | A página final não é 2xx | Passo 5 |
A nota geral abrange as 38 verificações, ponderadas por prioridade (alta 10, média 5, baixa 2; um alerta vale metade), com uma lista "Fix these first" e um link de relatório compartilhável.
Como corrigir cada problema relatado pelo verificador
1. Algumas versões não redirecionam para a principal
- Defina o endereço final:
https://www.example.comouhttps://example.com. - Na tabela do relatório, anote quais versões terminam na URL errada.
- Adicione um 301 de cada uma delas direto para o endereço final, mantendo o caminho (
$request_urino Nginx,$1no Apache). - Se a versão desviada terminar em um host totalmente diferente, verifique o DNS: um registro
Aantigo dowwwpode apontar para uma página de estacionamento ou para uma hospedagem anterior. - Confirme que as tags canonical, o sitemap e os links internos também usam o endereço final; um redirect que contradiz a canonical envia sinais conflitantes.
- Execute novamente o verificador de redirects.
2. O endereço passa por vários redirects
- Execute o comando
curl -sILno endereço informado e leia a cadeia. - Una as etapas: uma regra que envie toda versão não final direto para a URL final, como nos exemplos de Apache e Nginx acima.
- Se a CDN e a origem redirecionam ambas, deixe que apenas uma faça isso. Normalmente a CDN cuida do HTTP para HTTPS e a origem não faz nada, ou a origem faz os dois e a CDN apenas repassa as requisições.
- Atualize os links que você controla: o link do logotipo, a navegação, assinaturas de e-mail, perfis em redes sociais e destinos de anúncios devem apontar para o endereço final.
3. O HTTP não redireciona para HTTPS
- Confirme que o HTTPS funciona, com um certificado válido que cubra tanto o domínio sem
wwwquanto owww. - Adicione um redirect permanente de cada URL
http://para o equivalentehttps://, mantendo o caminho. - Quando tudo funcionar em HTTPS, considere o HSTS (
Strict-Transport-Security: max-age=31536000; includeSubDomains), para que os navegadores pulem totalmente a requisição HTTP. O Google lista o HSTS como outra forma de reforçar o HTTPS como canônico. O verificador de security headers testa isso.
4. O site não funciona em HTTPS
Instale um certificado (o Let's Encrypt é gratuito e a maioria das hospedagens automatiza o processo), garanta que ele cubra todos os nomes de host que você usa e depois adicione o redirect de HTTP para HTTPS do passo 3. Conteúdo misto, ou seja, scripts ou imagens ainda carregados por http://, é a próxima coisa a limpar.
5. A página inicial não responde com 200
Um 5xx indica problema no servidor; verifique os logs de erro. Um 403 costuma significar que um firewall ou uma proteção contra bots está recusando requisições automatizadas, o que pode estar barrando também os crawlers dos buscadores. Um 404 na página inicial geralmente indica que um redirect leva os visitantes a um caminho que não existe mais. Corrija o destino e verifique de novo.
6. Redirects temporários, loops ou cadeias longas
- Encontre a linha com um X e leia seus códigos. Um 302, 303 ou 307 entre versões de host deve virar 301 ou 308; verifique o servidor, a CDN e qualquer plugin, já que o temporário costuma ser um padrão (um
Redirectsimples no Apache envia 302). - Um loop geralmente significa que duas camadas discordam, como uma CDN que envia HTTPS para HTTP enquanto a origem envia HTTP para HTTPS. Desative uma delas.
- Para uma cadeia com mais de seis saltos, substitua-a por uma única regra que vá direto ao endereço final, como no passo 2.
Redirects durante uma migração
Quando as URLs mudam, as regras no nível do host acima são só o começo. A orientação de mudança de site do Google acrescenta:
- Mapeie cada URL antiga para a nova equivalente, usando sitemaps, logs do servidor, analytics e o seu CMS. Redirecionar tudo para a página inicial não é um mapeamento.
- Redirecione diretamente para o destino final, nunca para uma URL que redirecione de novo.
- Dê a cada nova URL uma canonical autorreferente, atualize os links internos e garanta que todos os sitemaps listem as novas URLs.
- Mantenha os redirects pelo maior tempo possível, em geral pelo menos um ano.
Para sites internacionais, mais uma regra do Google: evite redirecionar automaticamente os visitantes entre versões de idioma com base na localização ou no idioma do navegador, porque "the Googlebot crawler usually originates from the USA" (o Googlebot normalmente se origina nos EUA) e pode nunca ver as outras versões (sites multirregionais). Nosso guia de hreflang cobre a alternativa.
Exemplo prático (hipotético)
O exemplo a seguir é hipotético, não são dados reais. A Bramble & Co, uma loja de móveis inventada, migrou para uma nova plataforma. O verificador de redirects relata:
| Versão | Termina em (códigos) | OK |
|---|---|---|
http://bramble.example/ | https://www.bramble.example/ (302 › 301) | Não |
http://www.bramble.example/ | https://www.bramble.example/ (301) | Sim |
https://bramble.example/ | https://bramble.example/ | Não |
https://www.bramble.example/ | https://www.bramble.example/ | Sim |
O domínio sem www em https:// respondeu com o site completo em vez de redirecionar: a nova plataforma atendia os dois hosts, e só o servidor antigo tinha a regra de host. Os códigos também mostraram que http://bramble.example/ levava dois saltos e que o primeiro era um 302. A equipe adicionou uma única regra 301 na CDN para todas as versões não finais, removeu o redirect de HTTPS da própria plataforma para evitar uma cadeia e executou a verificação de novo: as quatro versões agora terminam em https://www.bramble.example/ em um único salto.
Checklist de redirects de 15 minutos
- Execute o verificador de redirects gratuito no seu domínio.
- Confirme que as quatro versões terminam em um único endereço.
- Confira os códigos de cada versão no relatório (ou com
curl -sIL): um salto, status 301 ou 308. - Verifique se as canonicals, o sitemap e os links internos usam o endereço final.
- Garanta que o certificado cubra tanto o domínio sem
wwwquanto owww. - Depois de uma migração, teste uma amostra de URLs antigas e mantenha os redirects por pelo menos um ano.
Como a Searvia ajuda
O verificador de redirects gratuito segue cada versão do seu endereço e verifica o HTTPS e o status da página inicial em um único relatório compartilhável. Em uma conta Searvia, a auditoria do site faz o crawl do site inteiro toda semana e sinaliza links internos que apontam para redirects, URLs redirecionadas ou quebradas no sitemap e páginas que retornam erros, para que você possa linkar direto para os endereços finais em todo lugar. O monitoramento de uptime verifica seu site 24 horas por dia e avisa quando ele sai do ar ou quando o certificado está prestes a expirar, que é quando os redirects de HTTPS mais costumam quebrar. Para a ordem completa das verificações técnicas, veja nosso guia de auditoria de SEO técnico.
Perguntas frequentes
- O que é um redirect 301?
- Um redirect 301 é uma resposta HTTP com status 301 Moved Permanently e um cabeçalho Location que aponta para uma nova URL. Os navegadores vão automaticamente para o novo endereço, e os buscadores tratam isso como uma mudança permanente: segundo o Google, o redirect permanente é um sinal de que o destino deve ser a URL canônica, então o novo endereço substitui o antigo nos resultados.
- Qual é a diferença entre um redirect 301 e um 302?
- O 301 é permanente e o 302 é temporário. O Google trata 301 e 308 como um sinal forte de que o destino do redirect deve ser canônico, enquanto com 302, 303 e 307 a URL original pode continuar nos resultados de busca. Use 301 ou 308 quando uma página mudou de vez, e 302 ou 307 apenas quando a URL original vai voltar.
- Devo usar 301 ou 308?
- Para os buscadores, os dois são redirects permanentes e recebem o mesmo tratamento. A diferença está nas requisições não GET: o 308 mantém o método e o corpo, enquanto com o 301 alguns clientes transformam um POST em GET. Use 301 para mudanças comuns de página; o 308 também serve, e frameworks como o Next.js o usam para redirects permanentes.
- Quantos redirects em uma cadeia são demais?
- O Google diz que seus crawlers geralmente seguem até 10 saltos de redirect, mas a orientação sobre mudança de site recomenda evitar cadeias e redirecionar direto para o destino final; se não for possível, manter as cadeias idealmente em no máximo 3 e menos de 5 saltos. Cada salto extra também deixa o visitante mais lento, então o ideal é um só.
- Por quanto tempo devo manter os redirects 301?
- A documentação de mudança de site do Google diz para manter os redirects pelo maior tempo possível, em geral pelo menos um ano. Do ponto de vista do visitante, o melhor é mantê-los indefinidamente, porque links antigos em e-mails, favoritos e outros sites continuam funcionando.
Fontes
- Redirects and Google Search – Google Search Central
- How HTTP status codes, and network and DNS errors affect Google Search – Google Search Central
- Site moves with URL changes – Google Search Central
- How to specify a canonical URL – Google Search Central
- Redirections in HTTP – MDN Web Docs
- redirects – Next.js documentation
- Managing multi-regional and multilingual sites – Google Search Central