Pular para conteúdo

Regras de roteamento

Visão geral

As regras de roteamento permitem direcionar requisições para a origin adequada com base em critérios de pattern matching (URI, Path, Query Params). As regras são avaliadas na ordem definida — a primeira regra que corresponder aos critérios é aplicada e as demais são ignoradas (first-match wins).

Use regras de roteamento para direcionar tráfego por tipo de conteúdo (por exemplo, manifests, segments, ou determinado path), aplicar caches diferentes, ignorar autenticação, adicionar headers e apontar para origins específicas.

Painel de Regras de Roteamento

Comportamento básico

  • Ordem: as regras são avaliadas de cima para baixo; reordene-as se necessário usando o controle de arrastar.
  • Condições: cada regra pode ter uma ou mais condições combinadas por E / OU.
  • Atribuição de origin: cada regra deve apontar para uma origin (selecionada ou criada). A origin é obrigatória.

Campos e operadores

Os campos definem onde será aplicado o pattern matching, que podem ser:

Campos Representação de busca
URI Completa https://example.com.br/file.mp4?device=mobile
URI /2024/file.mp4?device=mobile&si=plkOdwgB
Caminho da URI /files/2024/05/10/file_example.mp4

Os operadores são as condições que quando em conjunto vão gerar o pattern matching, que podem ser:

Operadores
Contém
Começa com
Termina com
Não começa com
Não termina com
É igual a
Não é igual a
Não contém
Está em
Não está em

O Valor é algum trecho da url que será comparado ao campo escolhido.

Exemplo: para uma regra de manifest HLS, use Caminho da URI + Termina com + .m3u8.

Detalhe de regra .m3u8

Configurações da regra

Cada regra permite ajustar configurações que só se aplicam quando a regra bate:

  • Origin: origin que irá servir a requisição (campo obrigatório).
  • Cache: TTL em segundos (ex.: 4) e opção Desabilitar Cache.
  • Autenticação por token: opção para Ignorar autenticação (se aplicável).
  • Headers: adicionar headers de requisição/origin/resposta (nome e valor)

Passo a passo — criar uma regra de roteamento

  1. Na tela de criação/edição, abra o painel Regras de roteamento.
  2. Clique em ADICIONAR REGRA (ou no card vazio) para adicionar uma nova entrada.
  3. Defina o Nome da regra (ex.: *.m3u8).
  4. Em Quando as requisições fornecidas coincidirem com, adicione uma condição:
    • Campo: selecione Caminho da URI.
    • Operador: selecione Termina com.
    • Valor: .m3u8.
    • Combine mais condições com ADICIONAR CONDICIONAL se precisar (use E/OU para lógica AND/OR).
  5. Em Origin, selecione a origin desejada. Se ainda não existir, use CRIAR ORIGEM e preencha os dados — a origin é obrigatória (será exibida validação de "Campo obrigatório" se não preenchida).
  6. Ajuste a Configuração de cache para esta regra: informe TTL em segundos ou habilite Desabilitar Cache conforme a necessidade do conteúdo.
  7. Configure Autenticação por token se desejar ignorar a verificação para esse tipo de requisição.
  8. Adicione Headers (ex.: X-PoP: LA como header de requisição) quando precisar sinalizar PoP ou metadados para a origin.
  9. Clique em SALVAR para persistir a regra.

Configurações de cache e headers

Testando a regra

  • Após salvar e provisionar, solicite um recurso que coincida com a regra e verifique a resposta:
  curl -i https://<seu-domínio>/path/playlist.m3u8
  • Confira o código HTTP, o body (se aplicável) e os headers adicionados (ex.: X-PoP).

Boas práticas

  • Separe regras de streaming (manifests/segments) para controlar TTLs adequadamente.
  • Use TTLs curtos para manifests e invariantes mais longos para objetos estáticos.
  • Teste cada regra individualmente antes de mover para produção.

Resolução de problemas

  • Se uma regra não for aplicada, verifique a ordem das regras e se a condição corresponde exatamente ao caminho requisitado.
  • Verifique se a origin está acessível e se as portas (80/443 ou 8000–8100) estão corretas.
  • Para depuração, inspecione os headers de resposta que indiquem qual origin atendeu a requisição.