Visão geral #
Este artigo explica como migrar uma iRule simples do F5 BIG-IP usada para redirecionamentos HTTP para RELIANOID Utilizando recursos nativos de redirecionamento do serviço de fazenda HTTP/S.
A iRule original redireciona os usuários que acessam o URI raiz (/) ao /myapp caminho no mesmo host.
iRule F5 original #
quando HTTP_REQUEST { se { [HTTP::uri] for igual a "/"} { HTTP::redirect "https://[HTTP::host]/myapp" } }
Essa lógica executa as seguintes ações:
- Inspeção de URI
- Preservação do hospedeiro
- Redirecionamento HTTPS
- Operação de anexação de caminho
RELIANOID Abordagem de Migração #
In RELIANOIDEssa funcionalidade pode ser implementada nativamente por meio de:
- Serviços agrícolas HTTP/S
- Padrões de correspondência de host
- Regras de redirecionamento
- Opções de destino anexar ou absoluto
Isso elimina a necessidade de scripts TCL/iRule.
Recomendado até RELIANOID Configuração #
Objetivo de configuração #
Quando um cliente acessa:
https://example.com/
O balanceador de carga redireciona o cliente para:
https://example.com/myapp
Etapa 1: Criar ou editar o serviço HTTP/S da fazenda #
Acessar Fazendas > Fazenda HTTP/S > Serviços
Etapa 2: Configurar os critérios de correspondência #
Utilize a configuração de correspondência de serviços para detectar a solicitação desejada.
Partida do anfitrião
Configure o Host O padrão de correspondência deve ser preenchido com o nome de host exato, se necessário, ou vazio para correspondência com curinga. Exemplo: example.com
Correspondência de URI
Configure a regra de correspondência de URI: /Isso garante que o redirecionamento se aplique apenas às solicitações que atingem o caminho raiz.
Etapa 3: Configure a ação de redirecionamento #
Na seção de ação de serviço, selecione Redirect.
Opções de destino de redirecionamento #
RELIANOID Oferece diferentes métodos de redirecionamento:
- Caminho de Anexação: Anexa um caminho ao host existente
- URL absoluta: Redireciona para um URL totalmente qualificado
- Redirecionamento relativo: Redireciona usando um URI relativo
Opção recomendada para esta migração #
Para esta iRule:
HTTP::redirect "https://[HTTP::host]/myapp"
O recomendado RELIANOID A configuração é:
Tipo de redirecionamento: Append
Destino: /myapp
Isso preserva:
- Nome de host original
- Esquema HTTPS
- Domínio solicitado pelo cliente
Alternativa: URL absoluta #
Alternativamente, você pode configurar:
Tipo de redirecionamento: Absolute URL
Destino: https://example.com/myapp
Isso é útil quando:
- Redirecionando para outro domínio
- Imposição de URLs canônicas
- Migração de aplicações
Validação #
Após aplicar a configuração, teste usando:
curl -I https://example.com/
Resposta esperada:
HTTP/1.1 301 Movido Permanentemente Localização: https://example.com/myapp
Validação do navegador #
Aberto:
https://example.com/
Comportamento esperado:
O navegador redireciona automaticamente para:
https://example.com/myapp
guia de solução de problemas #
Redirecionamento não acionado #
Verificar:
- As regras de correspondência de serviços estão corretas.
- O URI corresponde exatamente a /
- O padrão de correspondência do host é válido.
- A configuração da fazenda foi aplicada.
Loop de redirecionamento #
Garantir:
/myappestá excluído da regra de redirecionamento- O aplicativo de backend não realiza redirecionamentos conflitantes adicionais.
HTTPS não preservado #
Verificar:
- A fazenda está configurada como HTTPS.
- Os certificados SSL estão instalados corretamente.
- A configuração de redirecionamento preserva o esquema.
O redirecionamento se aplica a todos os URLs. #
Isso geralmente acontece se a correspondência do URI for muito ampla.
A configuração correta deve ter como alvo / só.
Melhores Práticas #
- Dê preferência às regras de redirecionamento nativas em vez de scripts, sempre que possível.
- Use o modo de anexação para redirecionamentos de aplicativos no mesmo host.
- Use redirecionamentos absolutos somente ao mudar de domínio.
- Valide o comportamento de redirecionamento com ferramentas de navegador e de linha de comando.
Resumo #
As iRules do F5 que realizam redirecionamentos HTTP podem ser migradas para RELIANOID Utilizando regras de redirecionamento de serviço HTTP/S nativas sem a necessidade de scripts.
Essa abordagem simplifica a configuração e melhora a capacidade de manutenção, preservando o comportamento de redirecionamento equivalente.