0Pricing
Cloud & IT Cert Prep · Lezione

Ottimizzazione delle prestazioni con le regole CDN

Usi il rules engine per reindirizzare HTTP a HTTPS, aggiungere intestazioni di sicurezza e applicare il filtro geografico per limitare l'accesso ai contenuti da determinati Paesi.

Ottimizzazione delle prestazioni con le regole CDN è una lezione Cloud & IT Cert Prep gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cloud & IT Cert Prep, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.

Perché il motore di regole è importante

Il motore di regole di Azure Front Door (chiamato Rule sets in Standard/Premium) consente di intercettare e modificare le richieste e le risposte HTTP presso il PoP edge prima che vengano memorizzate nella cache o inoltrate all'origine. Senza un motore di regole, sarebbe necessario gestire attività come i reindirizzamenti da HTTP a HTTPS, le intestazioni di risposta di sicurezza e il blocco geografico all'interno del codice dell'applicazione nell'origine, aumentando la latenza e collegando gli aspetti di sicurezza alla logica di business. Le regole eseguite all'edge sono più rapide e riducono il carico sull'origine.

Reindirizzamento da HTTP a HTTPS

Uno dei casi d'uso più comuni del motore di regole è imporre l'uso di HTTPS. Quando un client richiede il sito tramite HTTP, una regola di reindirizzamento presso l'edge di Front Door restituisce immediatamente una risposta 301 Moved Permanently (o 302 Found) che punta all'URL HTTPS, senza che la richiesta raggiunga l'origine. Questo è più veloce dei reindirizzamenti gestiti dall'origine e garantisce che tutto il traffico sia crittografato durante il transito. Configuratelo come azione di reindirizzamento per le richieste in cui la condizione RequestScheme è uguale a HTTP.

// Rules engine rule — redirect HTTP to HTTPS
// Match condition: RequestScheme Equals HTTP
// Action: URL Redirect
//   Redirect type: Moved (301)
//   Destination protocol: HTTPS
//   Destination host: {http.request.host}
//   Destination path: {http.request.uri.path}
//   Query string: {http.request.uri.querystring}

Aggiungere intestazioni di risposta di sicurezza

I browser moderni supportano intestazioni HTTP di sicurezza che prevengono gli attacchi comuni. È possibile aggiungere queste intestazioni a tutte le risposte usando le azioni Append response header del motore di regole, senza modificare il server di origine. Tra le intestazioni principali figurano: Strict-Transport-Security (impone HTTPS per un determinato periodo), X-Content-Type-Options: nosniff (impedisce il MIME sniffing), X-Frame-Options: DENY (previene il clickjacking) e Content-Security-Policy (limita le origini dei contenuti). L'aggiunta di queste intestazioni all'edge garantisce un'applicazione uniforme a tutte le origini.

// Rules engine — add security headers to all responses
// Action 1: Append response header
//   Header name: Strict-Transport-Security
//   Value: max-age=31536000; includeSubDomains
// Action 2: Append response header
//   Header name: X-Content-Type-Options
//   Value: nosniff
// Action 3: Append response header
//   Header name: X-Frame-Options
//   Value: DENY

Sostituire le impostazioni della cache per regola

Il motore di regole consente di sostituire il TTL predefinito della cache per schemi URL specifici. Ad esempio, si potrebbe voler memorizzare nella cache /static/images/* per 30 giorni, ma conservare nella cache le risposte di /api/* solo per 60 secondi. Usate una condizione di corrispondenza su RequestUri e un'azione Route configuration override che imposti una durata personalizzata della cache. In questo modo è possibile controllare in modo dettagliato la cache senza creare più route separate per ogni tipo di contenuto.

// Rules engine — cache API responses for 60 seconds
// Match condition: RequestUri BeginsWith /api/
// Action: Route configuration override
//   Cache: Enabled
//   Caching duration: 0 days, 0 hours, 1 minute
//   Query string caching: Include All

// Rules engine — cache static images for 30 days
// Match condition: RequestUri BeginsWith /static/images/
// Action: Route configuration override
//   Cache: Enabled
//   Caching duration: 30 days

Riscrittura degli URL all'edge

Le azioni di riscrittura degli URL modificano l'URL della richiesta prima che venga inoltrata all'origine, senza cambiare l'URL visualizzato dal client. Questa funzionalità è utile per inviare le richieste da una struttura URL a un percorso diverso nel backend. Ad esempio, è possibile riscrivere /products/item/{id} in /catalog/v2/products/{id} per adattarsi a una modifica dell'API backend senza aggiornare i collegamenti nei client. La riscrittura degli URL è un'azione del motore di regole che modifica il URL path usando la sostituzione di stringhe o i gruppi di cattura.

Regole di filtraggio geografico

Il filtraggio geografico a livello del motore di regole consente di reindirizzare o bloccare gli utenti di determinati Paesi in base alla geolocalizzazione derivata dall'indirizzo IP del client. A differenza del filtraggio geografico del CDN (che restituisce 403), il filtraggio geografico del motore di regole offre maggiore flessibilità: è possibile reindirizzare i Paesi bloccati a una landing page che spiega la disponibilità regionale oppure indirizzare determinati Paesi a gruppi di origini specifici per area geografica (ad esempio, gli utenti dell'UE verso origini nell'UE per la conformità al GDPR). La corrispondenza geografica RemoteAddress usa il database IP-paese di MaxMind.

Manipolazione delle intestazioni della richiesta

Il motore di regole può aggiungere, sovrascrivere o eliminare le intestazioni della richiesta prima di inoltrarla all'origine. Un uso comune consiste nell'aggiungere X-Forwarded-For o un'intestazione personalizzata come X-Front-Door-Id, così l'origine sa che le richieste sono passate da Front Door e può verificarle. È anche possibile eliminare l'intestazione Host originale e sostituirla con il nome host dell'origine, un'operazione importante quando l'origine convalida l'intestazione Host. In questo modo avete il pieno controllo su ciò che il server di origine visualizza.

Routing basato sulle intestazioni della richiesta

Le condizioni del motore di regole possono confrontare i valori delle intestazioni della richiesta, consentendo una logica di routing sofisticata. Ad esempio, è possibile indirizzare le richieste che contengono l'intestazione X-API-Version: 2 a un gruppo di origini diverso che esegue l'API v2, mentre le richieste senza tale intestazione vengono indirizzate all'origine v1. Questo consente di gestire il versioning blue-green delle API all'edge senza richiedere nomi host separati per ogni versione dell'API. Il routing basato sulle intestazioni viene usato anche per i test A/B, indirizzando il traffico in base a un cookie personalizzato di segmentazione degli utenti.

Comprimere le risposte all'edge

La compressione delle risposte in Front Door comprime le risposte basate su testo (HTML, CSS, JavaScript, JSON) usando gzip o Brotli prima di servirle dai PoP. La compressione è particolarmente efficace per i bundle JavaScript di grandi dimensioni, di cui può ridurre la dimensione di trasferimento fino al 70%. Abilitate la compressione nelle impostazioni della route e specificate i tipi MIME da comprimere. Il contenuto compresso viene memorizzato nella cache del PoP in forma compressa: solo la prima richiesta per ogni risorsa attiva la compressione; le richieste successive ricevono immediatamente il file compresso memorizzato nella cache.

Origin Shield

Origin Shield è un ulteriore livello di memorizzazione nella cache facoltativo che Front Door colloca tra i nodi edge dei PoP e l'origine. Quando è abilitato, invece di richiedere indipendentemente contenuti non memorizzati nella cache all'origine, ciascuno degli oltre 100 PoP edge inoltra le mancate corrispondenze della cache a un singolo PoP regionale Origin Shield, che le inoltra poi all'origine. Questo riduce significativamente il numero di richieste che raggiungono l'origine (il cosiddetto rapporto di offload dell'origine), continuando a servire i contenuti a livello globale dai PoP edge.

Testare le regole con Front Door Explorer

Prima di distribuire in produzione le modifiche al motore di regole, convalidatele usando gli strumenti di diagnostica e test del portale. Il pannello Diagnostic settings, insieme ai log WAF in modalità di rilevamento, mostra quali regole corrispondono. Per il motore di regole è inoltre possibile esaminare le intestazioni effettive delle richieste e delle risposte negli strumenti per sviluppatori del browser dopo la distribuzione in un ambiente di staging, oppure usare curl -v per inviare richieste specifiche e verificare che le intestazioni della risposta e il comportamento dei reindirizzamenti siano quelli previsti prima del passaggio alla produzione.

# Test HTTP-to-HTTPS redirect at the CDN/Front Door edge
curl -v -L http://myapp.azurefd.net/ 2>&1 | grep -E '< (HTTP|Location)'
# Expected output:
# < HTTP/1.1 301 Moved Permanently
# < Location: https://myapp.azurefd.net/

Verifica rapida

Verificate la vostra comprensione dei concetti di Microsoft Azure Fundamentals (AZ-900) illustrati in questa lezione.

Riepilogo della lezione

In questa lezione avete appreso che il motore di regole di Front Door gestisce all'edge i reindirizzamenti da HTTP a HTTPS, le intestazioni di risposta di sicurezza e le sostituzioni del TTL della cache senza modifiche all'origine; la riscrittura degli URL modifica in modo trasparente i percorsi delle richieste inoltrate all'origine, mentre il reindirizzamento degli URL modifica l'URL visualizzato dal client; infine, Origin Shield riduce il carico sull'origine consolidando le richieste per le mancate corrispondenze della cache attraverso un nodo shield regionale. Nella prossima lezione esploreremo Azure AI Services per aggiungere funzionalità intelligenti alle vostre applicazioni.

Domande Frequenti

La lezione «Ottimizzazione delle prestazioni con le regole CDN» è gratuita?

Sì — il testo completo di «Ottimizzazione delle prestazioni con le regole CDN» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cloud & IT Cert Prep, passa a CoddyKit PRO. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.

Cosa imparerò in «Ottimizzazione delle prestazioni con le regole CDN»?

Usi il rules engine per reindirizzare HTTP a HTTPS, aggiungere intestazioni di sicurezza e applicare il filtro geografico per limitare l'accesso ai contenuti da determinati Paesi. Eserciti Cloud & IT Cert Prep con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Cloud & IT Cert Prep?

Non è richiesta alcuna esperienza precedente. Cloud & IT Cert Prep su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Ottimizzazione delle prestazioni con le regole CDN»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Cloud & IT Cert Prep?

Sì. Ogni lezione Cloud & IT Cert Prep include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Profili ed endpoint Azure CDN
  2. Azure Front Door: bilanciamento del carico globale
  3. Web Application Firewall su Front Door
  4. Ottimizzazione delle prestazioni con le regole CDN
← Torna a Cloud & IT Cert Prep