Iniciar sessão Começar grátis

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.

CATEGORIA
SEO internacional
FORMATO
locale-redirect-trap-audit.md
PASSOS
6
PREÇO
Grátis — sem conta
QUANDO USAR ISTO

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

locale-redirect-trap-audit.md
---
name: locale-redirect-trap-audit
description: 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.
---

# 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.

## 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

1. Peça um URL com prefixo numa língua não predefinida para estabelecer uma preferência armazenada.
2. 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.
3. 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 é.
4. 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.
5. 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.
6. 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

---

Da biblioteca de competências da QuQi - https://www.quqi.io/pt/skills/locale-redirect-trap-audit
Transferência gratuita · sem conta, sem e-mail

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

  1. 01 Peça um URL com prefixo numa língua não predefinida para estabelecer uma preferência armazenada.
  2. 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.
  3. 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 é.
  4. 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.
  5. 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.
  6. 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.

Claude Code Guarde-a como ~/.claude/skills/locale-redirect-trap-audit/SKILL.md e o Claude carrega-a sozinho quando o que está a fazer corresponde ao gatilho. Coloque-a em .claude/skills dentro de um projeto se toda a equipa a deve ter.
Claude Carregue o ficheiro na secção de skills das suas definições. A partir daí aplica-se sozinho em qualquer conversa onde o gatilho encaixe, sem ter de se lembrar dele.
ChatGPT Não existe um formato de skills onde a instalar, por isso cole o conteúdo do ficheiro nas instruções de um Projeto ou de um GPT personalizado. Passa então a aplicar-se a todas as conversas desse projeto e não só àquela onde o colou.
Qualquer outro Cole o markdown na conversa antes da sua pergunta. Funciona em qualquer assistente, só tem de ser colado de novo de cada vez.

Mais em SEO internacional