Resumen #
Este artículo explica cómo migrar una iRule simple de F5 BIG-IP utilizada para redirecciones HTTP a RELIANOID utilizando las funciones nativas de redirección de servicios de granja HTTP/S.
La iRule original redirige a los usuarios que acceden a la URI raíz (/) al /myapp ruta en el mismo host.
Regla iRule F5 original #
cuando HTTP_REQUEST { si { [HTTP::uri] es igual a "/"} { HTTP::redirect "https://[HTTP::host]/myapp" } }
Esta lógica realiza lo siguiente:
- Inspección de URI
- Preservación del huésped
- Redirección HTTPS
- Operación de añadir ruta
RELIANOID Enfoque de migración #
In RELIANOIDEsta funcionalidad se puede implementar de forma nativa mediante:
- Servicios de granja HTTP/S
- Patrones de coincidencia del anfitrión
- Reglas de redireccionamiento
- Opciones de destino de agregar o absoluto
Esto elimina la necesidad de utilizar scripts TCL/iRule.
Recomendado RELIANOID Configuration #
Objetivo de configuración #
Cuando un cliente accede a:
https://example.com/
El balanceador de carga redirige al cliente a:
https://example.com/myapp
Paso 1: Crear o editar el servicio de granja HTTP/S #
Navegue a Granjas > Granja HTTP/S > Servicios
Paso 2: Configurar los criterios de coincidencia #
Utilice la configuración de coincidencia de servicio para detectar la solicitud deseada.
Partido anfitrión
Configurar el Host Patrón coincidente con el nombre de host exacto si es necesario, o vacío para coincidencia con comodines. Ejemplo: example.com
Coincidencia de URI
Configure la regla de coincidencia de URI: /Esto garantiza que la redirección se aplique únicamente a las solicitudes que lleguen a la ruta raíz.
Paso 3: Configurar la acción de redireccionamiento #
En la sección de acciones de servicio seleccione Redirect.
Opciones de redireccionamiento de destino #
RELIANOID Proporciona diferentes métodos de redireccionamiento:
- Ruta de adición: Agrega una ruta al host existente
- URL absoluta: Redirige a una URL completa
- Redireccionamiento relativo: Redirecciona usando una URI relativa
Opción recomendada para esta migración #
Para esta iRule:
HTTP::redirect "https://[HTTP::host]/myapp"
El recomendado RELIANOID La configuración es:
Tipo de redireccionamiento: Append
Destino: /myapp
Esto conserva:
- nombre de host original
- esquema HTTPS
- Dominio solicitado por el cliente
Alternativa: URL absoluta #
Alternativamente, puede configurar:
Tipo de redireccionamiento: Absolute URL
Destino: https://example.com/myapp
Esto es útil cuando:
- Redireccionando a otro dominio
- Aplicación de URL canónicas
- Migración de aplicaciones
de calidad #
Después de aplicar la configuración, pruebe usando:
curl -I https://example.com/
Respuesta esperada:
HTTP/1.1 301 Movido permanentemente Ubicación: https://example.com/myapp
Validación del navegador #
Abierto:
https://example.com/
Comportamiento esperado:
El navegador redirige automáticamente a:
https://example.com/myapp
Localización de averías #
La redirección no se activa. #
Verificar:
- Las reglas de coincidencia de servicios son correctas.
- La URI coincide exactamente /
- El patrón de coincidencia del host es válido.
- Se ha aplicado la configuración de la granja.
Bucle de redireccionamiento #
Asegurar:
/myappestá excluido de la regla de redireccionamiento- La aplicación de backend no realiza redirecciones adicionales que generen conflictos.
HTTPS no se conserva #
Verificar:
- La granja está configurada como HTTPS.
- Los certificados SSL están instalados correctamente.
- La configuración de redirección conserva el esquema.
La redirección se aplica a todas las URL. #
Esto suele ocurrir si la coincidencia de la URI es demasiado amplia.
La configuración correcta debería apuntar a / solamente.
BUENAS PRÁCTICAS #
- Siempre que sea posible, priorice las reglas de redirección nativas sobre el uso de scripts.
- Utilice el modo de anexión para redirecciones de aplicaciones en el mismo host.
- Utilice redirecciones absolutas únicamente al cambiar de dominio.
- Validar el comportamiento de redireccionamiento con herramientas tanto del navegador como de la línea de comandos.
Resumen #
Las reglas iRules de F5 que realizan redirecciones HTTP se pueden migrar a RELIANOID Utilizando reglas de redireccionamiento de servicio HTTP/S nativas sin necesidad de scripts.
Este enfoque simplifica la configuración y mejora la mantenibilidad, al tiempo que conserva un comportamiento de redireccionamiento equivalente.