Redirecionamento WWW: Guia Definitivo para Apache, Nginx e Cloudflare

A importância de redirecionar solicitações de um domínio não preferencial reside no fato de que os motores de busca interpretam URLs com e sem “www” como duas entidades distintas.

Essa duplicação gera problemas, prejudicando a otimização para motores de busca (SEO).

Descobri esta questão ao analisar meu próprio site com uma ferramenta de SEO e senti a necessidade de compartilhar o conhecimento com todos vocês.

Existem diversos métodos para efetuar o redirecionamento de não-www para www ou vice-versa. Vamos analisar algumas das maneiras mais acessíveis para realizar essa configuração.

Servidor Apache HTTP

Se você utiliza o servidor Apache HTTP, essa configuração de redirecionamento pode ser feita através do arquivo .htaccess ou modificando diretamente o arquivo httpd.conf.

Em casos de hospedagem compartilhada, o arquivo .htaccess costuma ser a opção mais prática. Entretanto, se você tem controle total sobre o servidor, como em VPS ou ambientes de nuvem, vale a pena considerar a modificação do httpd.conf. Independentemente do método escolhido, é crucial fazer um backup do arquivo antes de qualquer alteração.

Para redirecionar de www para não-www, você pode incluir as seguintes linhas:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.seusite.com 
RewriteRule (.*) https://seusite.com/$1 [R=301,L]

Para redirecionar de não-www para www, utilize o seguinte código:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^seusite.com 
RewriteRule (.*) https://www.seusite.com/$1 [R=301,L]

Após salvar as alterações, reinicie o serviço Apache caso esteja usando a configuração em httpd.conf.

Nginx

Para realizar o redirecionamento no Nginx, você pode adicionar o seguinte código dentro do bloco server no arquivo nginx.conf:

return 301 $scheme://seusite.com$request_uri;

O exemplo abaixo ilustra o redirecionamento de www para não-www:

server {
        server_name  www.exemplo.com;
        return 301 $scheme://exemplo.com$request_uri;
           }

Já este código é empregado para redirecionar de não-www para www:

server {
    server_name exemplo.com;
    return 301 $scheme://www.exemplo.com$request_uri;
}

Lembre-se de salvar o arquivo e reiniciar o servidor Nginx para que as mudanças tenham efeito.

Cloudflare

Implementar o redirecionamento é bastante simples quando se utiliza o Cloudflare. As regras de página podem ser utilizadas para configurar o redirecionamento.

  • Acesse o painel do Cloudflare e selecione o site onde deseja adicionar o redirecionamento.
  • Navegue até a seção “Regras de página” e crie uma nova regra.
  • Insira o URL e selecione a configuração “URL de encaminhamento”.
  • Escolha o código de status desejado (301 para redirecionamento permanente).
  • Indique o destino para o qual você deseja redirecionar.
  • A seguinte regra, por exemplo, redireciona tudo de https://www.seudominio.com para https://seudominio.com.
  • Após configurar, clique em “Salvar e implantar”.

Em instantes, o redirecionamento do seu site estará ativo.


Considerações Finais

Espero que este guia tenha sido útil para configurar o redirecionamento da forma desejada. Se você utiliza o WordPress e necessita de um redirecionamento mais abrangente do que apenas o www, confira este artigo para aprender a lidar com redirecionamentos no WordPress.

Gostaria de compartilhar este artigo com outras pessoas? Que tal divulgá-lo?