Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido 

Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido
Índice de Conteúdo

Um site multilíngue precisa entregar o conteúdo traduzido correto aos visitantes certos sem sacrificar a velocidade. É aqui que o cache de sites multilíngues se torna essencial, ajudando as páginas traduzidas a carregar mais rápido enquanto reduz solicitações repetidas ao seu servidor. No entanto, o cache de várias versões de idioma pode introduzir desafios como traduções desatualizadas, conteúdo no idioma errado e resultados inconsistentes para os rastreadores dos mecanismos de busca.

Neste guia, exploraremos os problemas de cache multilíngue mais comuns e explicaremos como o Cloudflare e o Varnish lidam com conteúdo traduzido. Continue lendo para escolher a estratégia de cache certa, evitar acertos de cache entre idiomas e construir uma configuração confiável para o seu site multilíngue.

Pontos-chave: cache de sites multilíngues com Cloudflare & Varnish

1
Versões de idioma separadas

Use URLs ou chaves de cache específicas por idioma para garantir que cada versão traduzida seja armazenada e servida separadamente. Isso ajuda a evitar que os usuários recebam conteúdo no idioma errado.

2
Evite conflitos de cache

O Varnish e o Cloudflare devem considerar as informações de idioma provenientes de URLs, cabeçalhos ou cookies. A configuração adequada evita acertos de cache entre idiomas e garante que os visitantes recebam a tradução correta.

3
Mantenha as traduções atualizadas

Defina TTLs de cache apropriados e limpe os caches afetados sempre que as traduções forem atualizadas. Isso evita que conteúdo desatualizado permaneça visível para os visitantes.

Por que o cache multilíngue é importante?

Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido

Sites multilíngues podem ter várias versões em cache da mesma página, pois cada idioma pode conter conteúdo e URLs diferentes. O armazenamento em cache dessas versões traduzidas permite que o site reutilize respostas existentes em vez de processar repetidamente o mesmo conteúdo a cada solicitação. Isso pode reduzir as solicitações ao servidor de origem, melhorar os tempos de carregamento da página e proporcionar uma experiência mais rápida aos visitantes.

No entanto, o cache multilíngue precisa manter cada versão de idioma devidamente separada. Se o sistema de cache não distinguir entre variantes de idioma, um visitante que solicitar uma página em francês poderá receber uma versão em inglês armazenada em cache. Da mesma forma, quando uma tradução é atualizada, uma resposta mais antiga em cache pode continuar a ser exibida até expirar ou ser invalidada.

O cache também desempenha um papel na forma como os rastreadores dos motores de busca acessam páginas multilíngues. Cada URL de idioma deve retornar consistentemente o conteúdo traduzido correspondente, para que os motores de busca possam entender e indexar corretamente as versões localizadas. Uma configuração de cache confiável deve, portanto, funcionar em conjunto com sinais de SEO como hreflang, URLs canônicas, e metadados específicos de idioma.

Como criar uma estratégia de cache para um site multilíngue

Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido

Uma boa estratégia de cache multilingue garante que os visitantes recebam consistentemente a versão de idioma correta, mantendo as páginas rápidas e reduzindo os pedidos ao servidor. O primeiro passo é decidir como o seu site identifica cada idioma e como o sistema de cache utiliza essa informação. 

Roteamento de URL e subdomínio

URLs específicos por idioma são uma das formas mais simples de tornar o cache multilíngue previsível. Cada idioma tem seu próprio URL, então o cache pode armazenar e servir cada versão separadamente. Por exemplo, example.com/fr/ pode representar a versão em francês, enquanto example.com/de/ representa a versão em alemão.

Subdomínios específicos por idioma funcionam de forma semelhante. Um site pode usar fr.example.com para francês e de.example.com para alemão. Como o idioma está incluído diretamente na URL, visitantes e sistemas de cache podem identificar facilmente qual versão servir. Estruturas de URL comuns incluem:

  • example.com/fr/
  • example.com/de/
  • fr.example.com
  • de.example.com

Detecção de idioma baseada em cabeçalho

Os sites também podem determinar o idioma preferido de um visitante por meio de cabeçalhos HTTP, especialmente o cabeçalho Accept-Language que o navegador envia. Por exemplo, um navegador configurado para francês pode enviar Accept-Language: fr, permitindo que o servidor selecione automaticamente a versão em francês.

No entanto, a deteção baseada em cabeçalhos exige uma configuração cuidadosa da cache. Se a cache considerar apenas o URL da página e ignorar o cabeçalho de idioma, poderá armazenar uma versão de idioma e devolvê-la a visitantes com uma preferência de idioma diferente. A chave de cache ou o comportamento Vary deve, portanto, ter em conta a informação de idioma relevante. Por exemplo:

  • Accept-Language: en
  • Accept-Language: fr
  • Accept-Language: de

Detecção de idioma baseada em cookies

Outra abordagem é armazenar a preferência de idioma do visitante em um cookie. Assim que um visitante seleciona um idioma, o site pode salvar essa escolha e usá-la para solicitações subsequentes. Isso pode proporcionar uma experiência mais consistente, especialmente quando os visitantes escolhem manualmente um idioma em vez de confiar nas configurações do navegador.

O desafio é que os cookies podem complicar o cache. Se o cache não distinguir as solicitações com base no cookie de idioma, os visitantes podem receber uma página em cache destinada a outro idioma. Portanto, a camada de cache deve ser configurada para variar ou ignorar o cache quando necessário. Por exemplo:

  • language=en
  • language=fr
  • language=de

Escolhendo uma estratégia de cache

A melhor estratégia de cache depende de como o seu site lida com a seleção de idioma. O roteamento de idioma baseado em URL geralmente é mais fácil de armazenar em cache porque cada idioma tem uma URL exclusiva. A detecção baseada em cabeçalho e cookie ainda pode funcionar, mas exige uma configuração mais cuidadosa para garantir que as respostas em cache sejam separadas corretamente.

Antes de escolher uma abordagem, considere o número de idiomas, como os visitantes selecionam os idiomas e com que frequência o conteúdo traduzido muda. O objetivo é fazer com que a detecção de idioma e o comportamento do cache funcionem em conjunto, em vez de deixar a camada de cache tratar cada solicitação como a mesma página. Principais fatores a considerar:

  • URLs específicas por idioma
  • Configuração da chave de cache
  • Manipulação de cabeçalhos e cookies
  • TTL do cache
  • Invalidação de cache
  • Frequência de atualização da tradução
  • Rastreamento por mecanismos de busca

Como o Varnish armazena em cache conteúdo multilíngue e traduzido

Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido

O Varnish Cache funciona como um proxy reverso entre os visitantes e o servidor de origem. Quando um visitante solicita uma página, o Varnish verifica se há uma resposta em cache válida disponível. Se encontrar uma resposta correspondente, ele entrega o conteúdo em cache sem enviar a solicitação de volta à origem. Se não existir uma resposta adequada, o Varnish encaminha a solicitação para a origem, recebe a resposta e pode armazená-la para solicitações subsequentes.

Para sites multilíngues, o Varnish precisa distinguir entre solicitações que devem retornar versões em idiomas diferentes. Portanto, as informações de idioma devem ser consideradas quando o Varnish determina se uma resposta em cache pode ser reutilizada. Isso impede que o cache trate traduções diferentes como a mesma resposta.

Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido

Chaves de cache específicas por idioma

O Varnish precisa de uma forma de distinguir respostas em cache que representam diferentes versões de idioma. Quando o idioma já está incluído no URL, cada URL pode naturalmente corresponder a uma entrada de cache diferente. Quando o idioma é determinado por um cabeçalho de pedido, cookie ou outro valor de pedido, a configuração do Varnish precisa de incorporar essa informação na sua lógica de caching. Por exemplo, um site multilingue pode distinguir respostas em cache usando:

  • /en/about/ → entrada de cache em inglês
  • /fr/about/ → Entrada de cache em francês
  • Accept-Language: en → Variação em inglês
  • Accept-Language: fr → variação em francês
  • Um cookie de idioma → idioma selecionado pelo visitante

A implementação exata depende de como o site determina o idioma. O requisito principal é que as solicitações que produzem respostas traduzidas diferentes não devem ser resolvidas para o mesmo objeto em cache.

Prevenção de acessos entre idiomas

Um acerto de cache entre idiomas ocorre quando o Varnish retorna uma resposta em cache de um idioma para um visitante que solicita outro. Por exemplo, um visitante que solicita uma página em francês pode receber uma resposta em inglês se ambas as solicitações forem tratadas como o mesmo recurso armazenável em cache.

Para reduzir este risco, o Varnish só deve reutilizar uma resposta em cache quando a variação de idioma é conhecida e corresponde ao pedido. Se o idioma não puder ser determinado de forma fiável, a resposta deve ser tratada com cuidado em vez de ser armazenada como uma entrada de cache partilhada. As salvaguardas importantes incluem:

  • Evite armazenar em cache respostas com informações de idioma ambíguas
  • Gerir cookies e cabeçalhos de idioma de forma consistente
  • Teste acertos e erros de cache para solicitações em diferentes idiomas
  • Verifique a troca de idioma após a ativação do cache

Invalidação de cache do Varnish

A invalidação de cache remove ou marca o conteúdo em cache como não sendo mais válido. Isso é importante quando o conteúdo original ou sua tradução foi atualizado. Sem a invalidação, o Varnish pode continuar servindo uma versão em cache mais antiga até que seu TTL configurado expire.

Para sites multilíngues, a invalidação deve considerar todas as versões de idioma afetadas. Se uma página em inglês e sua tradução em francês forem atualizadas, as respostas em cache correspondentes devem ser limpas ou atualizadas para que os visitantes não vejam conteúdo desatualizado. As abordagens comuns incluem:

  • Limpeza de URLs específicos
  • Limpeza de várias versões de idioma
  • Usar TTLs de cache
  • Limpeza automática após atualizações de conteúdo
  • Atualizando páginas traduzidas afetadas

Como o Cloudflare armazena em cache conteúdo multilíngue na borda

Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido

O Cloudflare funciona como uma camada de cache de borda entre os visitantes e o seu servidor de origem. Quando um visitante solicita uma página, o Cloudflare verifica se uma versão em cache está disponível em um local de borda. Se existir uma resposta válida, ela pode ser servida diretamente da borda em vez de solicitar a página ao servidor de origem. Se nenhuma resposta em cache estiver disponível, o Cloudflare recupera o conteúdo da origem e pode armazenar a resposta em cache para solicitações subsequentes.

Para sites multilíngues, esse processo precisa levar em conta o idioma solicitado. O Cloudflare deve ser capaz de distinguir entre diferentes versões de idioma para que uma resposta em inglês armazenada em cache não seja entregue a alguém que solicita a versão em francês. Isso torna a configuração de cache ciente do idioma importante quando o conteúdo traduzido é entregue por meio de diferentes URLs, cabeçalhos ou cookies.

Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido

Separando versões de idioma

O Cloudflare pode armazenar em cache diferentes versões de idioma separadamente quando cada versão tem um URL distinto. Por exemplo, /en/, /fr/ e /it/ podem representar conteúdo em inglês, francês e italiano. Como o idioma é incluído diretamente no URL, cada versão pode ter sua própria entrada de cache, facilitando o gerenciamento e a limpeza de versões individuais de idioma. Por exemplo:

  • example.com/en/products/
  • example.com/fr/products/
  • example.com/it/products/

Chaves de cache do Cloudflare e variações de idioma

O Cloudflare precisa distinguir as solicitações sempre que entradas em idiomas diferentes puderem produzir respostas diferentes. Com o roteamento de idioma baseado em URL, essa separação acontece naturalmente porque cada idioma tem sua própria URL.

É necessária mais atenção quando o idioma é determinado pelo cabeçalho Accept-Language ou por um cookie. Se esses valores afetarem a resposta traduzida, mas não forem tratados pela configuração de cache, solicitações para idiomas diferentes podem ser tratadas como o mesmo recurso. Isso pode resultar em um idioma sendo servido a visitantes que solicitam outro.

Para a maioria dos sites multilíngues, o roteamento baseado em URL é mais fácil de gerenciar porque o idioma fica diretamente visível na URL. A detecção por cabeçalho e por cookie também pode funcionar, mas exige configuração adicional para garantir que respostas em idiomas diferentes não sejam compartilhadas incorretamente.

TTLs de cache e limpeza

Um TTL de cache (Time to Live) determina por quanto tempo a Cloudflare mantém uma resposta em cache antes que ela expire. Um TTL mais longo pode melhorar o desempenho porque o conteúdo permanece em cache por mais tempo, enquanto um TTL mais curto permite que as alterações fiquem disponíveis mais rapidamente.

Para sites multilíngues, os TTLs devem refletir a frequência com que o conteúdo e as traduções mudam. Páginas atualizadas com frequência podem precisar de TTLs mais curtos, enquanto páginas estáveis geralmente podem usar TTLs mais longos. Quando uma tradução muda, a versão do idioma afetado deve ser limpa ou atualizada em vez de esperar que o TTL expire. Isso ajuda a evitar que os visitantes recebam traduções desatualizadas. A estratégia de cache pode incluir:

  • TTL curto para conteúdo atualizado com frequência
  • TTL mais longo para páginas estáveis
  • Regras de cache específicas por URL
  • Limpeza manual do cache
  • Limpeza automática após atualizações

Melhores práticas para armazenar em cache sites multilíngues

Cache de sites multilíngues: Como o Cloudflare & Varnish lidam com conteúdo traduzido

Uma configuração de cache bem planejada pode tornar os sites multilíngues mais rápidos sem fazer com que os visitantes recebam a tradução errada ou desatualizada. A chave é fazer com que seu sistema de tradução e a camada de cache trabalhem juntos, separando claramente cada versão de idioma. 

Combinar tradução e cache

A tradução e o cache devem funcionar em conjunto como parte do mesmo processo de entrega de conteúdo. A camada de tradução determina qual versão localizada deve ser retornada, enquanto a camada de cache armazena essa resposta para solicitações subsequentes. A consideração importante é o momento: o idioma deve ser determinado antes que a resposta seja armazenada em cache. Isso garante que o cache armazene a resposta traduzida que foi realmente solicitada, em vez de uma versão ambígua que poderia ser reutilizada para outro idioma.

Para sites que usam tradução automática, uma solução de tradução como Linguise pode simplificar esse processo gerando automaticamente conteúdo localizado, ao mesmo tempo que permite que as páginas traduzidas funcionem com a configuração de cache existente do site. Isso pode ser útil para sites com vários idiomas, onde gerenciar manualmente as versões traduzidas e mantê-las sincronizadas com o conteúdo em cache pode se tornar mais complexo.

Melhor prática: Certifique-se de que seu sistema de tradução e a camada de cache concordem sobre como as versões de idioma são identificadas antes de habilitar o cache de página inteira.

Quebre as Barreiras Linguísticas
Diga adeus às barreiras linguísticas e olá ao crescimento ilimitado! Experimente nosso serviço de tradução automática hoje.

Use chaves de cache específicas por idioma

Cada resposta traduzida deve corresponder à variação de cache correta. Estruturas de idioma baseadas em URL facilitam isso, pois cada idioma já possui um URL distinto, enquanto configurações baseadas em cabeçalho ou cookie exigem configuração adicional de cache.

Melhor prática: Prefira URLs específicas para cada idioma sempre que possível, como:

  • /en/about/ → Inglês
  • /fr/about/ → Francês
  • /de/about/ → Alemão

Isso proporciona uma separação clara entre as versões de idioma e reduz o risco de acertos de cache entre idiomas.

Defina cache-control e TTLs

Os cabeçalhos Cache-Control e os TTLs determinam como os navegadores, as CDNs e os proxies reversos lidam com o conteúdo em cache. Defini-los corretamente ajuda a equilibrar o desempenho do site com a necessidade de entregar traduções atualizadas.

Páginas que raramente mudam geralmente podem permanecer em cache por mais tempo, enquanto conteúdos atualizados com frequência devem usar TTLs mais curtos. A configuração correta depende da frequência com que o conteúdo e as traduções do seu site são atualizados.

Melhor prática: Por exemplo, você pode usar um TTL mais longo para uma página de destino multilíngue estática e um TTL mais curto para páginas de produtos ou notícias que mudam com frequência. Sempre teste a configuração para garantir que o conteúdo atualizado fique disponível quando esperado.

Limpe os caches após as atualizações

Quando o conteúdo ou as traduções mudam, limpe ou atualize as respostas em cache afetadas em vez de confiar apenas na expiração do TTL. Isso ajuda a garantir que os visitantes recebam a versão mais recente em todos os idiomas afetados.

Melhor prática: Inclua a invalidação de cache no seu fluxo de trabalho de atualização de conteúdo e certifique-se de que todas as versões de idioma afetadas sejam cobertas.

Testar páginas multilíngues em cache

Os testes são importantes porque os problemas de cache nem sempre são visíveis durante a navegação normal. Uma página pode parecer correta quando acessada diretamente, mas retornar o idioma errado quando servida a partir de uma resposta em cache.

Teste cada versão de idioma após configurar ou alterar suas regras de cache. Verifique tanto as solicitações iniciais quanto as subsequentes para confirmar que a resposta em cache correta é retornada consistentemente.

Melhor prática: Teste cenários como:

  • Abrir a mesma página em idiomas diferentes
  • Recarregando uma página em cache
  • Alternando entre idiomas
  • Atualizando uma tradução
  • Verificar a página após uma limpeza de cache
  • Rastreando URLs específicas de idioma

Lista de verificação de cache multilíngue

Antes de colocar sua configuração de cache multilíngue em produção, use uma lista de verificação simples para verificar se a detecção de idioma, o cache e as atualizações de conteúdo funcionam juntos corretamente. 

Lista de verificação de boas práticas:

  • Dê a cada versão de idioma um URL exclusivo ou uma variação de cache
  • Use chaves de cache específicas por idioma
  • Configure os cabeçalhos Cache-Control apropriados
  • Defina TTLs com base na frequência de atualização do conteúdo
  • Limpe as versões de idioma afetadas após as atualizações
  • Teste as páginas em cache em todos os idiomas suportados
  • Verifique respostas no idioma errado
  • Verifique se há conteúdo traduzido desatualizado
  • Verificar URLs específicas de idioma com rastreadores de mecanismos de busca
Pronto para explorar novos mercados? Experimente nosso serviço de tradução automática gratuitamente com nossa avaliação gratuita de 1 mês. Não é necessário cartão de crédito!

Conclusão

Fazer cache de sites multilíngues de forma eficaz exige um equilíbrio entre o desempenho do site e a entrega da versão de idioma correta e atualizada para cada visitante. Ao usar chaves de cache específicas por idioma, TTLs apropriados e invalidação de cache confiável, você pode reduzir as solicitações ao servidor enquanto evita conteúdo em idioma errado e desatualizado.

Para uma forma mais simples de gerenciar conteúdo traduzido, registre-se com Linguise e simplifique o fluxo de trabalho do seu site multilíngue com tradução automatizada, mantendo seu conteúdo localizado rápido e gerenciável.

Você também pode estar interessado em ler

Não perca!
Inscreva-se na nossa Newsletter

Receba notícias sobre tradução automática de sites, SEO internacional e muito mais!

Invalid email address
Experimente. Uma vez por mês, e você pode cancelar a qualquer momento.

Não vá embora sem compartilhar seu e-mail!

Não podemos garantir que você ganhará na loteria, mas podemos prometer algumas notícias informativas interessantes sobre tradução e descontos ocasionais.

Não perca!
Invalid email address