Auditoria à armadilha de redireccionamento de locale
Os redireccionamentos de língua baseados em sessão ou cookie tornam rotineiramente uma língua inalcançável. Se o locale predefinido não tem prefixo no URL, um caminho sem prefixo não transporta qualquer sinal de locale, pelo que o middleware de redireccionamento o trata como não definido e envia o visitante para o que estiver armazenado - o que significa que a língua predefinida nunca mais pode ser seleccionada. O mesmo mecanismo serve a língua errada a quem abre um link partilhado e pode anular por completo o hreflang.
Use quando os visitantes reportam não conseguir voltar a mudar para uma língua, ou quando um link partilhado abre na língua errada para quem o recebe.
O ficheiro da competência
O que precisa primeiro
- O site com a comutação de locale activada
- curl ou qualquer cliente capaz de guardar e reenviar cookies
Método
- 01 Peça um URL com prefixo numa língua não predefinida para estabelecer uma preferência armazenada.
- 02 Reutilize o mesmo cliente, pedindo agora o equivalente sem prefixo. Se devolver 302 de volta para a língua armazenada, o locale predefinido está inalcançável e o bug está confirmado.
- 03 Repita para um caminho profundo, não apenas para a página inicial. Um redireccionamento que só dispara na raiz é aceitável; um que dispara em todos os caminhos não é.
- 04 Peça o URL da língua predefinida sem qualquer cookie - é isto que um crawler vê. Se redireccionar, a validação de hreflang vai falhar por muito correcta que a marcação seja.
- 05 Corrija tornando o URL autoritativo: só actue sobre uma preferência armazenada na raiz nua, e só registe uma preferência quando o visitante a pedir explicitamente através do selector.
- 06 Volte a testar os quatro casos: escolher uma língua, voltar à raiz, escolher a língua predefinida, e abrir um caminho explícito com uma preferência conflituante armazenada.
O que isto produz
Uma matriz de quatro casos com passa/falha que prova que todas as línguas são alcançáveis, que os URLs explícitos nunca são sobrepostos, e que um pedido sem cookie recebe a predefinição canonical.
Onde isto corre mal
- Testar apenas a página inicial, onde o bug é menos visível
- Testar com um browser que já tem uma preferência guardada, pelo que o caminho partido nunca é accionado
- Assumir que os crawlers não são afectados - são, porque o redireccionamento altera o que é servido no URL canonical
Use esta skill na sua própria IA
O ficheiro é markdown simples, com o nome e o gatilho no frontmatter. Quando um assistente consegue carregar skills sozinho, é esse frontmatter que lê para decidir que esta se aplica.
Mais em SEO internacional
Reparação da reciprocidade de hreflang
Use quando existem páginas traduzidas e indexadas mas que nunca aparecem no país certo, ou quand...
Protecção contra desvio de chaves de tradução
Use em qualquer site cujas chaves de tradução sejam o texto original em inglês, onde editar um t...
Auditoria de layout RTL
Use antes de lançar árabe, hebraico, farsi ou urdu, ou quando um locale RTL mostra texto sobrepo...
Cobertura de sitemap multilingue
Use quando existem páginas traduzidas e ligadas mas que não recebem impressões, e o sitemap list...