Marché #
Cet article explique comment migrer une iRule F5 BIG-IP simple utilisée pour les redirections HTTP vers RELIANOID Utilisation des fonctionnalités de redirection natives du service de ferme HTTP/S.
La règle iRule d'origine redirige les utilisateurs accédant à l'URI racine (/) au /myapp chemin sur le même hôte.
iRule F5 d'origine #
when HTTP_REQUEST { if { [HTTP::uri] equals "/"} { HTTP::redirect "https://[HTTP::host]/myapp" } }
Cette logique effectue :
- Inspection URI
- Préservation de l'hôte
- Redirection HTTPS
- Opération d'ajout de chemin
RELIANOID Approche migratoire #
In RELIANOIDCette fonctionnalité peut être implémentée nativement via :
- Services de ferme HTTP/S
- Modèles de correspondance d'hôtes
- Règles de redirection
- Options de destination à ajouter ou absolue
Cela élimine le besoin de scripts TCL/iRule.
Recommandé RELIANOID Configuration #
Objectif de configuration #
Lorsqu'un client accède à :
https://example.com/
L'équilibreur de charge redirige le client vers :
https://example.com/myapp
Étape 1 : Créer ou modifier le service de batterie de serveurs HTTP/S #
Accédez à Fermes > Ferme HTTP/S > Services
Étape 2 : Configurer les critères de correspondance #
Utilisez la configuration de correspondance des services pour détecter la requête souhaitée.
Correspondance de l'hôte
Configurer le Host Le modèle doit correspondre exactement au nom d'hôte si nécessaire, ou être vide pour une correspondance avec caractères génériques. Exemple : example.com
Correspondance URI
Configurer la règle de correspondance d'URI : /Cela garantit que la redirection ne s'applique qu'aux requêtes atteignant le chemin racine.
Étape 3 : Configurer l’action de redirection #
Dans la section des actions de service, sélectionnez Redirect.
Options de redirection de destination #
RELIANOID propose différentes méthodes de redirection :
- Ajouter le chemin: Ajoute un chemin à l'hôte existant
- URL absolue: Redirige vers une URL complète
- Redirection relative: Redirections utilisant un URI relatif
Option recommandée pour cette migration #
Pour cette iRule :
HTTP::redirect "https://[HTTP::host]/myapp"
La recommandé RELIANOID la configuration est :
Type de redirection: Append
Destination: /myapp
Cela préserve :
- Nom d'hôte d'origine
- schéma HTTPS
- Domaine demandé par le client
Alternative : URL absolue #
Vous pouvez également configurer :
Type de redirection: Absolute URL
Destination: https://example.com/myapp
Ceci est utile lorsque :
- Redirection vers un autre domaine
- Application des URL canoniques
- Applications de migration
Validation #
Après avoir appliqué la configuration, testez en utilisant :
curl -I https://example.com/
Réponse attendue :
HTTP/1.1 301 Déplacement permanent Emplacement : https://example.com/myapp
Validation du navigateur #
Ouvert:
https://example.com/
Comportement attendu :
Le navigateur redirige automatiquement vers :
https://example.com/myapp
Dépannage #
La redirection ne se déclenche pas #
Vérifier:
- Les règles de correspondance des services sont correctes
- L'URI correspond exactement à /
- Le modèle de correspondance de l'hôte est valide
- La configuration de la ferme a été appliquée.
Boucle de redirection #
Ensure:
/myappest exclu de la règle de redirection- L'application backend n'effectue pas de redirections conflictuelles supplémentaires.
HTTPS non préservé #
Vérifier:
- La ferme est configurée en HTTPS
- Les certificats SSL sont correctement installés.
- La configuration de redirection préserve le schéma
La redirection s'applique à toutes les URL #
Cela se produit généralement si la correspondance d'URI est trop large.
La configuration correcte doit cibler / seulement.
Pratiques d'excellence #
- Privilégiez les règles de redirection natives aux scripts lorsque cela est possible.
- Utilisez le mode ajout pour les redirections d'applications sur le même hôte.
- Utilisez les redirections absolues uniquement lors d'un changement de domaine.
- Valider le comportement de redirection à la fois avec le navigateur et les outils en ligne de commande
Résumé #
Les iRules F5 effectuant des redirections HTTP peuvent être migrées vers RELIANOID Utilisation des règles de redirection natives du service HTTP/S sans nécessiter de script.
Cette approche simplifie la configuration et améliore la maintenabilité tout en préservant un comportement de redirection équivalent.