CloudFront-distribusjoner og origins
Opprett en CloudFront-distribusjon, konfigurer S3- og egendefinerte HTTP-origins, og forstå Origin Access Control for S3-sikkerhet.
CloudFront-distribusjoner og origins er en gratis leksjon i Cloud & IT Cert Prep på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Cloud & IT Cert Prep, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Cloud & IT Cert Prep inneholder totalt 4 leksjoner.
Hva er Amazon CloudFront?
Amazon CloudFront er AWS sitt globale Content Delivery Network (CDN) som hurtigbufrer og leverer innhold fra edge-lokasjoner fordelt på over 400 byer i mer enn 90 land. Når en bruker ber om innhold, leverer CloudFront det fra den nærmeste edge-lokasjonen, noe som reduserer forsinkelsen betydelig sammenlignet med å hente innholdet fra opphavsserveren.
CloudFront brukes ikke bare til statiske filer – tjenesten akselererer også dynamisk innhold, API-er og videostrømming. Den integreres med andre AWS-tjenester som S3, ALB, Lambda@Edge, WAF og Shield, og er derfor distribusjonslaget som vanligvis brukes i moderne AWS-arkitekturer.
CloudFront-distribusjoner
En CloudFront-distribusjon er den primære konfigurasjonsenheten. Den definerer én eller flere opphav (der innholdet ligger), hurtigbufferatferd (hvordan ulike URL-baner hurtigbufres), sikkerhetsinnstillinger og prisnivåer. De får tilgang til innholdet via distribusjonens domenenavn (for eksempel d1234abcdef.cloudfront.net) eller et egendefinert domene (for eksempel cdn.example.com) ved hjelp av en CNAME- eller ALIAS-post.
Etter opprettelsen tar det 10–15 minutter å distribuere distribusjoner globalt til alle edge-lokasjoner. Endringer i en eksisterende distribusjon tar også flere minutter å spre. Historisk har det vært to distribusjonstyper, men i dag bruker alle distribusjoner det samme samlede konfigurasjonsgrensesnittet.
# Create a CloudFront distribution backed by S3
aws cloudfront create-distribution \
--distribution-config '{
"Origins": {
"Quantity": 1,
"Items": [{
"Id": "S3Origin",
"DomainName": "my-bucket.s3.amazonaws.com",
"S3OriginConfig": {"OriginAccessIdentity": ""}
}]
},
"DefaultCacheBehavior": {
"TargetOriginId": "S3Origin",
"ViewerProtocolPolicy": "redirect-to-https",
"CachePolicyId": "658327ea-f89d-4fab-a63d-7e88639e58f6"
},
"Enabled": true,
"Comment": "My S3 distribution",
"CallerReference": "2026-06-20-unique"
}'S3 som CloudFront-opphav
Å bruke en S3-bøtte som CloudFront-opphav er et av de vanligste mønstrene. CloudFront henter objekter fra S3, hurtigbufrer dem ved edge-lokasjoner og leverer påfølgende forespørsler fra hurtigbufferet uten å kontakte S3 på nytt. Dette reduserer kostnadene for S3-forespørsler, forbedrer latenstiden for globale brukere og avlaster S3 for båndbredde.
For å levere et S3-basert nettsted trenger De ikke å gjøre bøtten offentlig. Bruk i stedet Origin Access Control (OAC) – den moderne erstatteren for Origin Access Identity (OAI). OAC gir bare CloudFront-distribusjonen tillatelse til å lese fra bøtten, slik at S3 forblir privat mens CloudFront leverer innholdet offentlig.
# S3 bucket policy granting OAC access to CloudFront
{
'Version': '2012-10-17',
'Statement': [{
'Effect': 'Allow',
'Principal': {
'Service': 'cloudfront.amazonaws.com'
},
'Action': 's3:GetObject',
'Resource': 'arn:aws:s3:::my-bucket/*',
'Condition': {
'StringEquals': {
'AWS:SourceArn': 'arn:aws:cloudfront::123456789:distribution/EDFDVBD6EXAMPLE'
}
}
}]
}Egendefinerte HTTP-/HTTPS-opphav
CloudFront støtter også egendefinerte opphav: alle HTTP- eller HTTPS-servere som er tilgjengelige fra internett, inkludert EC2-instanser, Application Load Balancers, API Gateway-endepunkter og lokale servere. Egendefinerte opphav gjør det mulig for CloudFront å hurtigbufre og akselerere dynamiske applikasjoner og API-er, ikke bare statiske filer.
Når De bruker en ALB som egendefinert opphav, må De konfigurere ALB-en til bare å godta tilkoblinger fra CloudFronts IP-områder i sikkerhetsgruppen. Dette tvinger all ekstern trafikk gjennom CloudFront, slik at WAF-regler og TLS-terminering kan brukes ved edge-lokasjonen, mens ALB-en holdes intern i AWS.
Origin Access Control (OAC) kontra OAI
Origin Access Identity (OAI) var den opprinnelige måten å begrense S3-bøttetilgang til CloudFront på. Det er en spesiell CloudFront-brukeridentitet som tildeles i S3-bøttens policy. OAI fungerer fortsatt, men regnes som en eldre løsning.
Origin Access Control (OAC) er den moderne erstatteren. OAC støtter alle typer S3-bøtter (inkludert S3 i AWS China-Regioner og SSE-KMS-krypterte bøtter), bruker IAM-tjenesteprinsipaler for mer detaljert kontroll og signerer automatisk forespørsler til S3 med SigV4. For nye distribusjoner bør De alltid bruke OAC i stedet for OAI.
Viewer Protocol Policy
Viewer Protocol Policy styrer hvordan CloudFront håndterer tilkoblinger mellom brukere (visningsklienter) og edge-lokasjonen:
- HTTP and HTTPS: tillat begge deler; anbefales ikke for sensitivt innhold
- Redirect HTTP to HTTPS: videresend HTTP-forespørsler transparent til HTTPS; den vanligste innstillingen
- HTTPS Only: avvis HTTP-tilkoblinger fullstendig; bruk dette for streng håndheving av TLS
Separat styrer Origin Protocol Policy hvordan CloudFront kommuniserer med opphavet: bare HTTP, bare HTTPS eller samsvar med visningsklienten. For S3-opphav med OAC bruker CloudFront alltid HTTPS.
Egendefinerte domener og SSL/TLS-sertifikater
For å levere innhold fra cdn.example.com i stedet for CloudFront-domenet konfigurerer De et Alternate Domain Name (CNAME) i distribusjonen og knytter til et SSL/TLS-sertifikat fra AWS Certificate Manager (ACM). ACM-sertifikatet må være i us-east-1 Region (uavhengig av hvor distribusjonen leverer trafikk), fordi CloudFront er en global tjeneste som administreres fra us-east-1.
Opprett Route 53-posten som en ALIAS-post som peker til domenenavnet for CloudFront-distribusjonen. CloudFront leverer automatisk sertifikatet ved samsvarende SNI-forespørsler.
# Request a certificate in us-east-1 for CloudFront
aws acm request-certificate \
--domain-name cdn.example.com \
--validation-method DNS \
--region us-east-1Prisklasser
CloudFronts Price Class styrer hvilke edge locations som brukes til å levere distribusjonen. Høyere prisklasser inkluderer dyrere edge locations (vanligvis i regioner med høyere båndbreddekostnader):
- Price Class 100: kun Nord-Amerika og Europa (lavest kostnad)
- Price Class 200: Nord-Amerika, Europa, Asia, Midtøsten og Afrika
- Price Class All: alle edge locations over hele verden (best ytelse, høyest kostnad)
Bruk Price Class 100 for interne verktøy eller målgrupper som er begrenset til Nord-Amerika og Europa. Bruk Price Class All for globale applikasjoner rettet mot forbrukere.
Origin-grupper og failover
Origin groups gjør failover for CloudFront-origin mulig. De definerer en primær origin og en sekundær origin i en gruppe. Hvis den primære origin-en returnerer en bestemt HTTP-feilkode (for eksempel 500, 502, 503 eller 504), prøver CloudFront automatisk forespørselen på nytt mot den sekundære origin-en.
Origin-failover er nyttig for gjenoppretting etter katastrofer: behold en primær S3-bøtte i us-east-1 og en replikert sikkerhetskopi i us-west-2 som sekundær origin. CloudFront går transparent over til den sekundære origin-en ved et S3-avbrudd, uten at DNS-endringer kreves. Dette mønsteret utfyller S3 Cross-Region Replication.
CloudFront-tilgangslogger
CloudFront kan levere access logs til en S3-bøtte og registrere detaljer om hver visningsforespørsel: tidsstempel, edge location, statuskode, overførte byte, cache-treff eller -bom, brukeragent og mer. Logger leveres i puljer med noen minutters mellomrom.
Bruk tilgangslogger til å analysere trafikkmønstre, identifisere innhold med høy belastning, revidere sikkerhetsrelevante felt (IP, referent, brukeragent) og måle treffprosenten i cachen. Feltet x-edge-result-type forteller om forespørselen var en Hit, Miss eller RefreshHit på edge location.
# Enable access logging on a distribution
aws cloudfront update-distribution \
--id EDFDVBD6EXAMPLE \
--distribution-config '{
...existing config...
"Logging": {
"Enabled": true,
"Bucket": "my-logs-bucket.s3.amazonaws.com",
"Prefix": "cloudfront-logs/",
"IncludeCookies": false
}
}' \
--if-match ETVPDKIKX0DEREdge locations kontra regionale edge-cacher
CloudFront har to nivåer med hurtigbufferinfrastruktur:
- Edge locations: hundrevis av PoP-er globalt, nær sluttbrukerne; leverer bufret innhold med minimal forsinkelse
- Regional Edge Caches (RECs): 13 større cacher med lengre levetid mellom edge locations og origin-er; leverer innhold som ikke er populært nok til å bli værende i de små cachene ved edge locations
Når et oppslag i cachen ved edge location ikke treffer, kontrollerer CloudFront REC-en før forespørselen sendes helt til origin-en. REC-er er transparente – De konfigurerer dem ikke direkte – men de forbedrer treffprosenten i cachen betydelig for innhold med lang hale og reduserer belastningen på origin-en.
Kort kontroll
Test forståelsen Deres av AWS Solutions Architect-konsepter (SAA-C03) fra denne leksjonen.
Oppsummering av leksjonen
I denne leksjonen lærte De at CloudFront-distribusjoner bufrer innhold globalt ved edge locations, at OAC holder S3-bøtter private samtidig som CloudFront får tilgang, og at egendefinerte origin-er støtter ALB-er, API Gateway og alle HTTP-servere. ACM-sertifikater for CloudFront må klargjøres i us-east-1. Deretter skal vi se nærmere på cache-atferd og TTL-innstillinger.
Lær deg Cloud & IT Cert Prep med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 150
- Leksjoner
- 600
Ofte stilte spørsmål
Er leksjonen «CloudFront-distribusjoner og origins» gratis?
Ja – hele teksten i «CloudFront-distribusjoner og origins» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Cloud & IT Cert Prep-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Cloud & IT Cert Prep inneholder totalt 4 leksjoner.
Hva lærer jeg i «CloudFront-distribusjoner og origins»?
Opprett en CloudFront-distribusjon, konfigurer S3- og egendefinerte HTTP-origins, og forstå Origin Access Control for S3-sikkerhet. Du øver på Cloud & IT Cert Prep med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Cloud & IT Cert Prep?
Ingen tidligere erfaring er nødvendig. Cloud & IT Cert Prep på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «CloudFront-distribusjoner og origins»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Cloud & IT Cert Prep-leksjonen?
Ja. Alle Cloud & IT Cert Prep-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- CloudFront-distribusjoner og origins
- Cache-atferd og TTL-innstillinger
- Signerte URL-er, signerte informasjonskapsler og geografisk begrensning
- CloudFront med WAF og Lambda@Edge