Módulo 3 · 3.4
www, redirecionamento e o que o DNS não faz
Módulo 3: Registos para o seu website · Tempo de leitura: 7 minutos
Objetivo de aprendizagem: Depois desta lição, conhece a diferença entre o DNS (onde está o servidor) e o redirecionamento (que página recebe), e consegue configurar bem o www.
Conceitos-chave: www, redirecionamento (redirect, 301/302), apontador ou alias de domínio, certificado https, um caminho não existe no DNS
O que o DNS sabe e não sabe
O DNS responde a um único tipo de pergunta: "onde está este nome?" A resposta é um endereço (A, AAAA) ou outro nome (CNAME). Depois disso, o trabalho do DNS termina. Tudo o que acontece a seguir é tratado pelo servidor web nesse endereço.
Um endereço web é composto por mais do que um nome:
https://www.example.com/contact?taal=nl
└─┬─┘ └──────┬───────┘└───┬──┘└──┬──┘
protocolo nome caminho parâmetrosApenas a parte do meio, o nome, chega ao DNS. O protocolo (https), o caminho (/contact) e os parâmetros nunca são vistos pelo DNS. Daqui resultam algumas coisas que surpreendem muitas pessoas:
- O DNS não consegue redirecionar para uma página. Um registo do tipo "
example.comparaothersite.example/actie" não existe. - O DNS não escolhe entre http e https. Se um visitante chega ao https, isso é tratado pelo servidor web.
- O DNS não sabe que website está num servidor. Num único endereço IP podem funcionar centenas de websites. O navegador envia o nome no seu pedido, e o servidor web escolhe o site certo com base nisso.
O redirecionamento acontece no servidor web
Quer que example.com redirecione os visitantes para www.example.com, ou que um segundo nome de domínio vá para o seu site principal? Precisa então de dois passos:
- DNS: faça o nome apontar para um servidor web que consiga fazer o redirecionamento. Normalmente é o seu próprio alojamento, ou um serviço de redirecionamento do seu registrar.
- Servidor web: configure aí um redirecionamento (redirect). O servidor não responde então com uma página, mas com "vá para este outro endereço". O navegador segue isso automaticamente.
Um redirecionamento tem um código:
| Código | Significa | Utiliza-se para |
|---|---|---|
| 301 | Mudado permanentemente | Um redirecionamento fixo, por exemplo do domínio raiz para o www. Os motores de busca passam a usar o novo endereço. |
| 302 (ou 307) | Temporariamente noutro lugar | Uma página de ação temporária ou manutenção. |
Um apontador de domínio ou alias de domínio é outra coisa: nesse caso, o mesmo website mostra-se sob dois nomes, sem que a barra de endereço mude. Isso também é tratado pelo painel de alojamento, não pelo DNS. O DNS do segundo nome só precisa de apontar para o mesmo servidor.
Também existe o frame forwarding: a barra de endereço continua a mostrar o seu domínio enquanto vê outro site. Isto funciona muitas vezes mal com websites modernos (que recusam carregar numa frame) e os motores de busca não gostam disso. É melhor não usar.
www: sim ou não?
www é simplesmente um subdomínio. Se o seu site funciona em www.example.com ou em example.com é uma escolha. O importante é apenas:
- Ambos têm de funcionar. As pessoas escrevem um ou outro. Se faltar um registo para
www, recebem uma mensagem de erro a dizer que o site não existe. - Escolha um como endereço principal e faça o outro redirecionar para lá com um 301. Assim um motor de busca vê um site, não duas cópias.
No DNS, isso resulta normalmente em:
example.com. 3600 IN A 192.0.2.10
www.example.com. 3600 IN CNAME example.com.ou num registo A próprio para www com o mesmo endereço. Um wildcard (lição 3.3) também pode abranger o www. Num serviço externo, como uma plataforma de loja online, o www aponta muitas vezes com um CNAME para o serviço e o domínio raiz com um registo A para um endereço indicado pelo serviço (a lição 3.2 explica porquê).
O certificado também faz parte disto
Um navegador só mostra um cadeado se o servidor tiver um certificado exatamente para o nome que o visitante escreveu. Um certificado para example.com não cobre automaticamente www.example.com. Certifique-se, por isso, de que o certificado contém ambos os nomes.
Isto tem uma consequência para o redirecionamento: um visitante que abra https://example.com recebe primeiro uma verificação de certificado, e só depois o redirecionamento. Sem um certificado válido para o domínio raiz, vê um aviso, mesmo que depois seja redirecionado corretamente. Assim, também o nome que apenas redireciona precisa de um certificado.
Certificados gratuitos como os do Let's Encrypt verificam se o nome realmente aponta para o seu servidor. Se o DNS ainda apontar para um servidor antigo, o pedido não é bem-sucedido. Primeiro o DNS, depois o certificado.
Na prática: assim se apresenta num painel
Como exemplo, usamos o DirectAdmin. No cPanel, Plesk e outros painéis, esta funcionalidade chama-se muitas vezes "Redirects" ou "Redirecionamentos".
- Abra Config. redirecionamentos do site.
- Introduza o caminho que deve ser redirecionado, por exemplo
/para o site inteiro. - Escolha o tipo: 301 para permanente.
- Introduza o endereço de destino, com
https://. - Guarde.
O DNS do nome tem de apontar, para isso, para o seu próprio alojamento. Se apontar para outro serviço, o visitante nunca chega a este redirecionamento.
Resumo
- O DNS só dá o endereço de um nome. O caminho, o protocolo e os parâmetros não são vistos pelo DNS.
- O redirecionamento (301, 302) e os apontadores de domínio são tratados pelo servidor web, não pelo DNS.
- Certifique-se de que tanto o domínio raiz como o www têm um registo, e escolha um como endereço principal.
- Um certificado tem de cobrir todos os nomes que um visitante possa escrever, incluindo o nome que apenas redireciona.
- Primeiro o DNS bem configurado, depois o certificado.
Quiz
Exercício
Exercício Z3.4: www: CNAME ou A? Como está configurado www.sidn.nl no DNS? Procure que registo existe para www.sidn.nl e preencha o tipo (A, AAAA ou CNAME) e o valor. Dica: pergunte primeiro por um CNAME.
Não há, nesta lição, um exercício de configuração na zona de treino: o redirecionamento acontece num servidor web, não no DNS.
Para saber mais
Estes artigos descrevem os passos nos painéis da WebOké; noutros painéis funcionam de forma semelhante.
- Manual DirectAdmin 4.7: Config. redirecionamentos do site: reencaminhar um domínio ou página
- Manual DirectAdmin 4.4: Domínios alternativos: um segundo nome de domínio para o mesmo site
- Criar um redirecionamento para outro domínio (conta de alojamento)
- Criar um redirecionamento de domínio (registo de domínio)
- Manual DirectAdmin 6.3: Certificado para www, sub-domínios e wildcard
