Ce guide concerne BIG-IP sur TMOS. Les noms et options doivent être confrontés à la documentation de votre version.
L’événement définit les informations disponibles
Une iRule exécute une logique à un moment du traitement. CLIENT_ACCEPTED concerne l’acceptation de la connexion ; HTTP_REQUEST intervient lorsque les en-têtes HTTP de la requête sont analysés. Une commande HTTP n’est pas rendue disponible par le seul fait que le port est 80 ou 443.
Avant de lire les conditions, vérifiez l’événement, les profils et le côté du flux. Pour HTTPS, le traitement HTTP suppose que le contenu soit accessible après terminaison TLS. Une commande correcte placée dans un événement inadapté peut produire une erreur plutôt que le routage attendu.
Sources : F5, ltm profile http ; F5, ltm virtual.
Chemin, URI et query ne sont pas identiques
HTTP::path renvoie le chemin ; la query correspond à la partie de paramètres ; l’URI inclut le contexte de requête plus large selon la commande utilisée. Une condition visant /api/ ne doit pas être écrite comme si un paramètre de query était un répertoire.
Avec Tcl switch, -exact compare une chaîne entière, -glob interprète les motifs et -regexp utilise des expressions régulières. L’ordre des motifs compte. Un astérisque dans un switch exact ne devient pas automatiquement un wildcard.
Sources : F5, HTTP::path ; F5, Tcl switch.
Un routage par préfixe lisible
Cette iRule pédagogique suppose un VS Standard avec profil HTTP, et des pools existants dans Common. Elle distingue le répertoire API, son chemin racine sans slash et le reste. La casse est volontairement conservée.
when HTTP_REQUEST {
switch -glob -- [HTTP::path] {
"/api" -
"/api/*" {
pool /Common/pool_api
}
default {
pool /Common/pool_web
}
}
} Sources : F5, HTTP::path ; F5, Tcl switch.
Data groups : séparer les valeurs de la logique
Un data group évite de multiplier les valeurs en dur dans une règle. Son type, le mode de comparaison et la forme de ses entrées doivent correspondre au besoin. Pour des réseaux IP, ne comparez pas les adresses comme de simples sous-chaînes.
Les frontières d’un chemin méritent également une définition précise : le préfixe /admin peut englober /administrator si la condition est trop large. Pour une décision de sécurité, la normalisation et le comportement de l’application doivent être étudiés ensemble.
Sources : F5, class, data groups ; F5, HTTP::path.
Comprendre return, redirect et les règles associées
Une redirection renvoie une réponse au client ; un choix de pool oriente la requête serveur. Ce ne sont pas deux formes équivalentes de navigation. Dans une iRule, return termine le traitement courant, mais ne constitue pas une garantie qu’aucune autre iRule associée ne s’exécutera.
Inventoriez les policies et les autres règles du VS. Si plusieurs objets tentent de sélectionner un pool ou de produire une réponse, leur combinaison doit être analysée avant d’attribuer un symptôme à une seule ligne.
Sources : F5, HTTP::redirect ; F5, ltm policy ; F5, return et commandes globales.
Prévoir les cas limites
En laboratoire, contrôlez /api, /api/commande, /apiculture, une query, une différence de casse et une URL encodée. Notez la destination attendue avant l’essai. Vérifiez les erreurs dans les journaux sans laisser une journalisation par requête à fort volume en production.
Sources : F5, sys log.
Sources et portée
Références consultées le . Les exemples utilisent des noms et adresses de documentation à remplacer. Les commandes de lecture affichent l’existant ; les captures et requêtes de diagnostic sont à limiter au périmètre autorisé.
- F5 — ltm profile http · Référence TMSH v17.0.0 · consulté le 2 octobre 2026.
- F5 — ltm virtual · Référence TMSH v17.0.0 · consulté le 2 octobre 2026.
- F5 — HTTP::path · Référence de commandes iRules · consulté le 2 octobre 2026.
- F5 — Tcl switch · Référence de commandes iRules · consulté le 2 octobre 2026.
- F5 — class, data groups · Référence de commandes iRules · consulté le 2 octobre 2026.
- F5 — HTTP::redirect · Référence de commandes iRules · consulté le 2 octobre 2026.
- F5 — ltm policy · Référence TMSH v17.0.0 · consulté le 2 octobre 2026.
- F5 — return et commandes globales · Référence de commandes iRules · consulté le 2 octobre 2026.
- F5 — sys log · Référence TMSH v17.0.0 · consulté le 2 octobre 2026.
Retrouver le parcours de lecture F5 LTM