O Papel dos Redirecionamentos na Migração de Web sites e SEO
A migração de um sítio web, a reestruturação da arquitetura de URLs ou a eliminação de conteúdos antigos exigem uma gestão rigorosa dos caminhos de navegação [Source 2]. Quando um URL deixa de existir, os motores de busca e os utilizadores que tentam aceder a esse endereço deparam-se com erros de página não encontrada. Para evitar a perda de autoridade de otimização para motores de busca (SEO) e garantir que os visitantes chegam ao destino correto, utilizam-se regras de redirecionamento no servidor [Source 2].
Os códigos de estado HTTP mais comuns para esta tarefa são o 301 e o 302:
- 301 Permanente: Indica aos motores de busca que o conteúdo foi movido definitivamente para o novo endereço. Este método transfere a quase totalidade da autoridade de ligação (link equity) do URL antigo para o novo [Source 2].
- 302 Temporário: Informa que o redirecionamento é provisório. Os motores de busca mantêm o URL original indexado, sendo ideal para campanhas temporárias ou manutenção programada [Source 2].
A implementação manual destas diretivas em servidores web pode ser propensa a falhas de sintaxe, especialmente quando se lida com centenas de caminhos. O processamento automatizado de mapeamentos estruturados minimiza estes erros de configuração.
Formatação do Ficheiro CSV de Entrada
Para gerar as regras de configuração, o gerador exige um ficheiro em formato CSV (valores separados por vírgulas) que mapeia as origens e os destinos. O ficheiro deve respeitar os seguintes critérios estruturais:
- Cabeçalho Obrigatório: A primeira linha do ficheiro tem de conter as colunas
sourceetarget(oudestination). Se estas colunas não forem detetadas, surge o erro: "A linha de cabeçalho precisa das colunas source e target (ou destination)." - Caminhos de Origem (Source): Devem ser URLs completos (HTTP ou HTTPS) ou caminhos relativos que comecem obrigatoriamente com
/. Os nomes de anfitrião (hostnames) presentes na origem são automaticamente removidos durante o processamento. - Caminhos de Destino (Target/Destination): Podem ser URLs absolutos (com protocolo HTTP ou HTTPS) ou caminhos relativos à raiz do servidor.
- Limites do Ficheiro: O tamanho do ficheiro CSV deve ser inferior a 5 MB. O limite máximo de processamento é de 2 000 mapeamentos por ficheiro.
Exemplo de Estrutura de CSV
source,target
/pagina-antiga,/pagina-nova
https://dominio.com/servicos,https://dominio.com/nossos-servicos
/blog/artigo-antigo,/blog/artigo-novo
Sintaxe de Redirecionamento por Ambiente de Servidor
Cada ambiente de alojamento web interpreta e executa as regras de redirecionamento através de diretivas e sintaxes proprietárias.
Nginx
No servidor Nginx, as regras geradas utilizam blocos de localização ou diretivas de reescrita ancoradas ao caminho exato de origem. A ancoragem garante que apenas a correspondência idêntica aciona o redirecionamento, evitando conflitos com subdiretórios semelhantes.
Apache
Para servidores Apache, as regras são escritas para o ficheiro .htaccess utilizando o módulo mod_alias ou mod_rewrite. As expressões são ancoradas com os caracteres de início (^) e fim ($) de linha para assegurar a correspondência exata do caminho de origem, ignorando variações não mapeadas.
Vercel
A plataforma Vercel gere os redirecionamentos através do ficheiro de configuração vercel.json. Por padrão, as configurações nativas da Vercel utilizam o parâmetro permanent, que resulta num código 308 para redirecionamentos permanentes e 307 para temporários. Para garantir a conformidade estrita com os códigos HTTP tradicionais, a ferramenta gera a configuração utilizando explicitamente a propriedade statusCode definida como 301 ou 302.
Regras de Validação e Tratamento de Erros
Para garantir a integridade das configurações geradas e evitar falhas críticas no servidor, o gerador aplica validações estritas a cada linha do ficheiro CSV:
- Correspondência Exata: Todas as regras geradas são de correspondência exata. Não são aceites caracteres curinga (wildcards) ou padrões de rota complexos. Se forem detetados, o sistema devolve o erro: "A linha
{line}usa caracteres curinga ou de padrão de rota. Este gerador aceita apenas caminhos de origem exatos." - Parâmetros de Consulta e Fragmentos: A origem não pode conter strings de consulta (query strings) ou fragmentos (âncoras
#). Caso existam, é exibida a mensagem: "A linha{line}inclui uma string de consulta (query string) ou fragmento na origem. Use apenas o caminho de origem." - Comprimento de URL: O comprimento máximo permitido para qualquer URL no ficheiro é de 2 048 caracteres. URLs que excedam este limite acionam o aviso: "Um URL na linha
{line}tem mais de 2048 caracteres." - Duplicações: Cada caminho de origem deve ser único. Se a mesma origem for mapeada mais do que uma vez, ocorre o erro: "A linha
{line}repete o caminho de origem{source}. Cada origem pode aparecer apenas uma vez."
Privacidade e Processamento de Dados
O processamento do ficheiro CSV e a geração das diretivas de configuração ocorrem localmente, executados diretamente no navegador do utilizador. Nenhum dado, URL ou ficheiro é enviado para os servidores do BroBroGo. O seu ficheiro CSV e as regras geradas permanecem no seu navegador. Nada é enviado para o BroBroGo.
Perguntas Frequentes
Como devo formatar o ficheiro CSV?
Use uma linha de cabeçalho com as colunas "source" e "target" (ou "destination"). Cada linha seguinte pode usar um URL de origem HTTP ou HTTPS completo ou um caminho começando com /, além de um destino completo ou relativo à raiz.
Os redirecionamentos gerados são correspondências exatas?
Sim. As saídas do Nginx e Apache são ancoradas ao caminho exato de origem, e a Vercel recebe o mesmo caminho literal. O hostname de origem é removido; strings de consulta (query strings), fragmentos e padrões estilo curinga (wildcard) na origem são rejeitados porque os três ambientes os tratam de formas diferentes.
Porque é que a saída da Vercel usa statusCode?
A mudança permanente da Vercel produz 308 e a temporária produz 307. O statusCode é utilizado para que a sua escolha permaneça exatamente como 301 ou 302. Implantações padrão da Vercel permitem 2048 rotas no total, por isso esta ferramenta aceita até 2000 mapeamentos.
Qual é o limite de tamanho e de linhas suportado pelo gerador?
O gerador aceita ficheiros CSV com um tamanho inferior a 5 MB e processa um limite máximo de até 2 000 mapeamentos de redirecionamento por operação. Se o ficheiro exceder estes limites, o processamento é interrompido para garantir a estabilidade do navegador.