Suorituskyvyn optimointi CDN-säännöillä
Ohjatkaa HTTP-liikenne HTTPS:ään sääntömoottorin avulla, lisätkää suojausotsakkeita ja rajoittakaa sisällön käyttöä tietyistä maista maantieteellisellä suodatuksella.
Suorituskyvyn optimointi CDN-säännöillä on ilmainen Cloud & IT Cert Prep-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Cloud & IT Cert Prep-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Cloud & IT Cert Prep-kurssilla on yhteensä 4 oppituntia.
Miksi sääntökone on tärkeä
Azure Front Doorin sääntökone (Standard/Premium-versioissa nimeltään Rule sets) mahdollistaa HTTP-pyyntöjen ja -vastausten sieppaamisen ja muokkaamisen reunasolmussa ennen niiden välimuistiin tallentamista tai välittämistä alkuperään. Ilman sääntökonetta HTTP-uudelleenohjaus HTTPS:ään, tietoturvaotsakkeet vastauksiin ja maantieteellinen esto pitäisi toteuttaa alkuperäsovelluksen koodissa. Tämä lisäisi viivettä ja kytkisi tietoturvahaasteet liiketoimintalogiikkaan. Reunassa suoritettavat säännöt toimivat nopeammin ja vähentävät alkuperän kuormitusta.
HTTP-uudelleenohjaus HTTPS:ään
Yksi sääntökoneen yleisimmistä käyttötapauksista on HTTPS:n pakottaminen. Kun asiakas pyytää sivustoanne HTTP:n kautta, Front Doorin reunassa oleva uudelleenohjaussääntö palauttaa välittömästi vastauksen 301 Moved Permanently (tai 302 Found), joka osoittaa HTTPS-osoitteeseen — pyyntö ei koskaan saavuta alkuperää. Tämä on nopeampaa kuin alkuperässä tehtävät uudelleenohjaukset ja varmistaa, että kaikki liikenne salataan siirron aikana. Määrittäkää toiminto uudelleenohjauksena pyynnöille, joissa RequestScheme-ehdon arvo on 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}Tietoturvaotsakkeiden lisääminen vastauksiin
Nykyaikaiset selaimet tukevat HTTP-tietoturvaotsakkeita, jotka estävät yleisiä hyökkäyksiä. Voitte lisätä nämä otsakkeet kaikkiin vastauksiin sääntökoneen Append response header -toiminnoilla muuttamatta alkuperäpalvelinta. Tärkeitä otsakkeita ovat esimerkiksi Strict-Transport-Security (pakottaa käyttämään HTTPS:ää tietyn ajan), X-Content-Type-Options: nosniff (estää MIME-tyypin tunnistamisen sisällön perusteella), X-Frame-Options: DENY (estää klikkauskaappauksen) ja Content-Security-Policy (rajoittaa sisällön lähteitä). Kun otsakkeet lisätään reunassa, niiden käyttö on yhdenmukaista kaikissa alkuperissä.
// 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: DENYVälimuistiasetusten ohittaminen säännön mukaan
Sääntökoneen avulla voitte ohittaa oletusarvoisen välimuistin TTL-arvon tiettyjen URL-mallien osalta. Voitte esimerkiksi tallentaa /static/images/*-sisällön välimuistiin 30 päiväksi mutta säilyttää /api/*-vastaukset välimuistissa vain 60 sekunnin ajan. Käyttäkää RequestUri-ehtoon perustuvaa täsmäytystä ja Route configuration override -toimintoa mukautetun välimuistin keston määrittämiseen. Näin voitte hallita välimuistia tarkasti ilman erillisten reittien luomista kullekin sisältötyypille.
// 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 daysURL-osoitteiden uudelleenkirjoitus reunassa
URL rewrite -toiminnot muokkaavat pyynnön URL-osoitetta ennen sen välittämistä alkuperään muuttamatta asiakkaan näkemää URL-osoitetta. Tästä on hyötyä, kun pyynnöt halutaan lähettää yhdestä URL-rakenteesta toisenlaiseen taustajärjestelmän polkuun. Voitte esimerkiksi kirjoittaa /products/item/{id}-osoitteen muotoon /catalog/v2/products/{id} taustajärjestelmän API-muutoksen vuoksi päivittämättä asiakaslinkkejä. URL rewrite on sääntökoneen toiminto, joka muokkaa URL path -arvoa merkkijonon korvaamisen tai sieppausryhmien avulla.
Maantieteelliseen sijaintiin perustuvat suodatinsäännöt
Maantieteellinen suodatus sääntökoneen tasolla mahdollistaa käyttäjien uudelleenohjaamisen tai estämisen tiettyjen maiden perusteella asiakkaan IP-osoitteesta johdetun maantieteellisen sijainnin avulla. Toisin kuin CDN:n maantieteellinen suodatus (joka palauttaa koodin 403), sääntökoneen maantieteellinen suodatus tarjoaa enemmän joustavuutta — voitte ohjata estettyjen maiden käyttäjät aloitussivulle, joka selittää alueellisen saatavuuden, tai reitittää tietyt maat aluekohtaisiin alkuperäryhmiin (esimerkiksi EU-käyttäjät EU-alkuperiin GDPR-vaatimusten noudattamiseksi). RemoteAddress-maantäsmäytys käyttää MaxMindin IP-osoitteiden ja maiden välistä tietokantaa.
Pyyntöotsakkeiden käsittely
Sääntökone voi lisätä, korvata tai poistaa pyyntöotsakkeita ennen niiden välittämistä alkuperään. Yleinen käyttötapaus on lisätä X-Forwarded-For-otsake tai mukautettu otsake, kuten X-Front-Door-Id, jotta alkuperä tietää pyyntöjen kulkeneen Front Doorin kautta ja voi vahvistaa ne. Voitte myös poistaa alkuperäisen Host-otsakkeen ja korvata sen alkuperän isäntänimellä — tämä on tärkeää, kun alkuperä tarkistaa Host-otsakkeen. Näin hallitsette täysin sitä, mitä alkuperäpalvelin näkee.
Reititys pyyntöotsakkeiden perusteella
Sääntökoneen ehdot voivat täsmätä pyyntöotsakkeiden arvoihin, mikä mahdollistaa kehittyneen reitityslogiikan. Voitte esimerkiksi reitittää otsakkeen X-API-Version: 2 sisältävät pyynnöt toiseen alkuperäryhmään, jossa käytetään v2-API:a, ja ilman kyseistä otsaketta saapuvat pyynnöt v1-alkuperään. Näin blue-green-API-versiointi voidaan toteuttaa reunassa ilman erillisiä isäntänimiä kullekin API-versiolle. Otsakepohjaista reititystä käytetään myös A/B-testaukseen reitittämällä liikennettä mukautetun käyttäjäsegmentin evästeen perusteella.
Vastausten pakkaaminen reunassa
Vastausten pakkaus Front Doorissa pakkaa tekstipohjaiset vastaukset (HTML, CSS, JavaScript ja JSON) gzip- tai Brotli-muotoon ennen niiden tarjoamista PoP-solmuista. Pakkauksesta on eniten hyötyä suurille JavaScript-paketeille, sillä se voi pienentää siirrettävää kokoa jopa 70 prosenttia. Ottakaa pakkaus käyttöön reittiasetuksissa ja määrittäkää pakattavat MIME-tyypit. Pakattu sisältö tallennetaan PoP-solmussa välimuistiin pakattuna — siksi vain kunkin resurssin ensimmäinen pyyntö käynnistää pakkauksen; seuraavat pyynnöt saavat välimuistissa olevan pakatun tiedoston heti.
Origin Shield
Origin Shield on valinnainen ylimääräinen välimuistitaso, jonka Front Door sijoittaa PoP-reunasolmujen ja alkuperän väliin. Kun ominaisuus on käytössä, yli 100 reunalla sijaitsevaa PoP-solmua eivät pyydä välimuistista puuttuvaa sisältöä kukin erikseen alkuperästä, vaan välittävät välimuistiosumat kyseiselle alueelliselle Origin Shield PoP -solmulle, joka puolestaan välittää ne alkuperään. Tämä vähentää merkittävästi alkuperään saapuvien pyyntöjen määrää (tätä kutsutaan nimellä origin offload ratio) ja mahdollistaa samalla sisällön tarjoamisen maailmanlaajuisesti reunalla sijaitsevista PoP-solmuista.
Sääntöjen testaaminen Front Door Explorerilla
Ennen kuin otatte sääntökonemuutokset käyttöön tuotannossa, vahvistakaa niiden toiminta portaalin diagnostiikka- ja testaustyökaluilla. Diagnostic settings -näkymän havaitsemistilan WAF-lokit näyttävät, mitkä säännöt täsmäävät. Sääntökonetta varten voitte myös tarkastella todellisia pyyntö- ja vastausotsakkeita selaimen kehittäjätyökaluilla sen jälkeen, kun muutokset on otettu käyttöön testiympäristössä, tai lähettää tiettyjä pyyntöjä komennolla curl -v ja varmistaa, että vastausotsakkeet ja uudelleenohjausten toiminta ovat odotusten mukaisia ennen tuotantoon siirtymistä.
# 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/Pikatarkistus
Testatkaa tämän oppitunnin Microsoft Azure Fundamentals (AZ-900) -käsitteiden ymmärtämistä.
Oppitunnin yhteenveto
Tässä oppitunnissa opitte, että Front Doorin sääntökone käsittelee HTTP-uudelleenohjaukset HTTPS:ään, tietoturvaotsakkeet vastauksiin ja välimuistin TTL-arvon ohitukset reunassa ilman muutoksia alkuperään, URL rewrite muokkaa alkuperään välitettävien pyyntöjen polkuja huomaamatta, kun taas URL-uudelleenohjaus muuttaa asiakkaalle näkyvää URL-osoitetta, ja Origin Shield vähentää alkuperän kuormitusta kokoamalla välimuistiosumattomat pyynnöt alueellisen suojaussolmun kautta. Seuraavaksi tutustumme Azure AI Services -palveluihin, joiden avulla sovelluksiin voidaan lisätä älykkyyttä.
Opi Cloud & IT Cert Prep tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 150
- Oppitunnit
- 600
Usein kysytyt kysymykset
Onko oppitunti ”Suorituskyvyn optimointi CDN-säännöillä” ilmainen?
Kyllä – oppitunnin ”Suorituskyvyn optimointi CDN-säännöillä” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Cloud & IT Cert Prep-kurssin, päivitä CoddyKit PROhon. Cloud & IT Cert Prep-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Suorituskyvyn optimointi CDN-säännöillä”?
Ohjatkaa HTTP-liikenne HTTPS:ään sääntömoottorin avulla, lisätkää suojausotsakkeita ja rajoittakaa sisällön käyttöä tietyistä maista maantieteellisellä suodatuksella. Harjoittelet Cloud & IT Cert Prep-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Cloud & IT Cert Prep-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Cloud & IT Cert Prep-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.
Kuinka kauan ”Suorituskyvyn optimointi CDN-säännöillä”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Cloud & IT Cert Prep-oppitunnilla?
Kyllä. Jokainen Cloud & IT Cert Prep-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Azure CDN -profiilit ja päätepisteet
- Azure Front Door: maailmanlaajuinen kuormantasaus
- Verkkosovellusten palomuuri Front Doorissa
- Suorituskyvyn optimointi CDN-säännöillä