O Google rastreia URLs de colchetes brutos e codificados separadamente

Colchetes brutos em um URL e sua versão codificada por porcentagem,% 5B e% 5D, são URLs diferentes, disse o defensor da pesquisa do Google, John Mueller, na segunda-feira Bluesky. Ele escreveu que teria presumido que eram equivalentes e que “provavelmente deu às pessoas a resposta errada sobre isso no passado”.
O Google rastreará ambas as versões, disse ele; se descobrir que contêm informações idênticas, eliminará a duplicação e escolherá uma versão; ele recomenda que você escolha um formato para utilizar em todos os links, tags canônicas, mapas de sites e dados estruturados. As regras para formatos duplicados aplicam-se igualmente a espaços, sinais de adição e “%20”, disse ele.
Por que os colchetes codificados são um URL diferente
Mueller atribuiu a diferença ao RFC 3986, o padrão da Internet para sintaxe URI, que coloca colchetes e sinais de adição em seu conjunto reservado de caracteres. De acordo com a Seção 2.2, URIs que trocam um caractere reservado por sua versão codificada em porcentagem “não são equivalentes”.
Ele estava respondendo a Vanessa Fox, ex-funcionária do Google que desenvolveu a Central de webmasters do Google; ela perguntou em uma resposta do Bluesky (depois de fazer a pergunta nos comentários do primeiro episódio do Gabinete Não-Canônico) se o Google tratava a forma codificada de um URL como um URL diferente. Ela forneceu exemplos usando ambos ?filter()=123 e ?filter%5B%5D=123 (um em links; outro na identificação de versões canônicas). A verificação de JavaScript que ele fez comparou esses dois URLs e retornou false.
Ele ressaltou que o uso de colchetes brutos em uma string de consulta também é tecnicamente inválido de acordo com a RFC 3986; isso ocorre porque o RFC 3986 restringe o uso de colchetes ao nome do host, para agrupar endereços IPv6 brutos.
Ele afirmou que maiúsculas e minúsculas na codificação não fazem diferença, portanto “%5B” e “%5b” são equivalentes; eles aderem às regras estabelecidas pela RFC 3986 em relação a caracteres hexadecimais.
O que o Google faz com ambas as versões
Mueller descreveu o que o Google faz quando um servidor retorna a mesma página para os formulários brutos e codificados:
Dito isto, *talvez* o seu servidor os torne “equivalentes” ao servir o mesmo conteúdo. Rastrearíamos ambas as versões, se víssemos o mesmo conteúdo (talvez até no nível da soma de verificação), as desduplicaríamos e escolheríamos uma.
Ele também afirmou que um navegador pode codificar colchetes antes de enviar uma versão codificada do que é digitado pelo usuário na barra de URL. No entanto, se um URL entre colchetes for solicitado a partir de JavaScript (ou outro código), os colchetes poderão ser enviados como estão. Ele recomendou a codificação de colchetes quando eles precisam ser usados em um URL: “sempre codifique, nunca mostre ()”.
O que a documentação do Google já diz
A documentação da estrutura de URL do Google já exige codificação de caracteres como colchetes. Ele diz que a Pesquisa Google oferece suporte a URLs definidos pelo IETF STD 66, o padrão que contém RFC 3986, e que “os caracteres definidos pelo padrão como reservados devem ser codificados em porcentagem”.
Cobri o primeiro episódio do Gabinete Não Canônico na semana passada. Esse episódio tratou de emojis e caracteres não ingleses em URLs, que os navegadores codificam por cento em um caminho de URL. Os colchetes são um caso diferente, porque o padrão os reserva como delimitadores.
Sites que já usam colchetes brutos
Vanessa Fox respondeu que estava pensando em um site que usa uma notação de colchetes inválida, parece estar indexando muito bem e decidiu deixá-lo como está porque seria muito trabalhoso convertê-lo em colchetes válidos.
Mueller afirmou que não anteciparia problemas com o uso desta estrutura, mas “não criaria um novo site como este”. Mueller também indicou que prestaria atenção extra a todos os links internos (incluindo metadados relacionados a rel=canonical e dados estruturados) para que sejam uniformes.
Além disso, Mueller afirmou que, com base nos problemas encontrados no Google em relação ao funcionamento desses caracteres há mais de 10 anos, outros programas de rastreamento/indexador/busca podem não ser “tão exatos nesta lógica” ao processá-los.
Por que isso é importante
O Google escolherá uma versão do URL, disse Mueller, se houver várias versões disponíveis com o mesmo conteúdo. Se todos os seus URLs usarem o mesmo formato (ou seja, bruto ou codificado), é mais provável que essa escolha seja do seu jeito. A melhor solução é codificar os colchetes na URL conforme solicitado pela própria documentação do Google. Mueller espera que um site existente usando colchetes brutos continue funcionando. Portanto, sua tarefa parece ser garantir que seus links internos e metadados apontem para a mesma versão do URL.
Olhando para o futuro
Mueller sugeriu verificar os rastreadores e buscadores importantes para você para saber como eles lidam com URLs entre colchetes. Mueller não mencionou especificamente quais rastreadores ou buscadores poderiam ter problemas, mas disse que alguns rastreadores/buscadores podem não seguir a exatidão do Google ao lidar com URLs entre colchetes.
O Google ainda não havia postado sua segunda parte da série de vídeos do Google intitulada “Gabinete não canônico” sobre robots.txt em 20 de outubro.
Imagem em destaque: Popartic/Shutterstock






