Panoramica #
Questo articolo spiega come migrare una semplice iRule F5 BIG-IP utilizzata per i reindirizzamenti HTTP in RELIANOID utilizzo delle funzionalità native di reindirizzamento del servizio farm HTTP/S.
L'iRule originale reindirizza gli utenti che accedono all'URI radice (/) al /myapp percorso sullo stesso host.
iRule F5 originale #
quando HTTP_REQUEST { se { [HTTP::uri] è uguale a "/"} { HTTP::redirect "https://[HTTP::host]/myapp" } }
Questa logica esegue le seguenti operazioni:
- ispezione URI
- Conservazione dell'ospite
- Reindirizzamento HTTPS
- operazione di aggiunta al percorso
RELIANOID Approccio alla migrazione #
In RELIANOID, questa funzionalità può essere implementata in modo nativo tramite:
- Servizi farm HTTP/S
- Modelli di corrispondenza host
- Regole di reindirizzamento
- Aggiungi o assoluti opzioni di destinazione
Ciò elimina la necessità di utilizzare script TCL/iRule.
Consigliato RELIANOID Configurazione #
Obiettivo di configurazione #
Quando un client accede:
https://example.com/
Il bilanciatore di carico reindirizza il client a:
https://example.com/myapp
Passaggio 1: Creare o modificare il servizio farm HTTP/S #
Accedere a Farm > Farm HTTP/S > Servizi
Passaggio 2: Configurare i criteri di corrispondenza #
Utilizzare la configurazione di corrispondenza del servizio per rilevare la richiesta desiderata.
Partita ospitante
Configura il Host corrispondenza del modello con il nome host esatto, se necessario, oppure vuoto per la corrispondenza con caratteri jolly. Esempio: example.com
Corrispondenza URI
Configura la regola di corrispondenza URI: /Ciò garantisce che il reindirizzamento si applichi solo alle richieste che raggiungono il percorso radice.
Passaggio 3: Configurare l'azione di reindirizzamento #
Nella sezione delle azioni di servizio selezionare Redirect.
Opzioni di destinazione del reindirizzamento #
RELIANOID offre diversi metodi di reindirizzamento:
- Aggiungi percorso: Aggiunge un percorso all'host esistente
- URL assoluto: Reindirizza a un URL completo
- Reindirizzamento relativo: Reindirizzamento tramite URI relativo
Opzione consigliata per questa migrazione #
Per questa iRule:
HTTP::redirect "https://[HTTP::host]/myapp"
La raccomandata RELIANOID La configurazione è:
Tipo di reindirizzamento: Append
Nei Dintorni: /myapp
Ciò preserva:
- Nome host originale
- schema HTTPS
- Dominio richiesto dal cliente
Alternativa: URL assoluto #
In alternativa, è possibile configurare:
Tipo di reindirizzamento: Absolute URL
Nei Dintorni: https://example.com/myapp
Questo è utile quando:
- Reindirizzamento a un altro dominio
- Applicazione degli URL canonici
- Migrazione delle applicazioni
Convalida #
Dopo aver applicato la configurazione, eseguire il test utilizzando:
curl -I https://example.com/
Risposta prevista:
HTTP/1.1 301 Moved Permanently Posizione: https://example.com/myapp
Convalida del browser #
Aperto:
https://example.com/
Comportamento previsto:
Il browser reindirizza automaticamente a:
https://example.com/myapp
Troubleshooting #
Il reindirizzamento non si attiva. #
Verificare:
- Le regole di corrispondenza dei servizi sono corrette
- URI corrisponde esattamente /
- Il modello di corrispondenza host è valido
- È stata applicata la configurazione della fattoria
Ciclo di reindirizzamento #
il garantire:
/myappè escluso dalla regola di reindirizzamento- L'applicazione backend non esegue ulteriori reindirizzamenti in conflitto.
HTTPS non preservato #
Verificare:
- La farm è configurata come HTTPS
- I certificati SSL sono installati correttamente
- La configurazione del reindirizzamento preserva lo schema
Il reindirizzamento si applica a tutti gli URL #
Questo accade di solito se la corrispondenza URI è troppo generica.
La configurazione corretta dovrebbe mirare / solo.
Best Practices #
- Quando possibile, è preferibile utilizzare regole di reindirizzamento native anziché script.
- Utilizzare la modalità di aggiunta per i reindirizzamenti delle applicazioni sullo stesso host.
- Utilizzare i reindirizzamenti assoluti solo quando si cambia dominio.
- Convalida il comportamento del reindirizzamento sia con strumenti browser che con strumenti da riga di comando.
Sintesi #
Le regole iRules di F5 che eseguono reindirizzamenti HTTP possono essere migrate in RELIANOID Utilizzo di regole di reindirizzamento del servizio HTTP/S nativo senza necessità di scripting.
Questo approccio semplifica la configurazione e migliora la manutenibilità, preservando al contempo un comportamento di reindirizzamento equivalente.