Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
[HIGOBASHI.AWS] #6 CloudFront を使ってみよう!/ Let's u...
Search
maru1981
August 29, 2018
Technology
1.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[HIGOBASHI.AWS] #6 CloudFront を使ってみよう!/ Let's use CloudFront
HIGOBASHI.AWS #6 の登壇資料です
maru1981
August 29, 2018
More Decks by maru1981
See All by maru1981
re:Growth2023 OSAKA 「Amazon ElastiCache Serverless」のご紹介
maru1981
0
28k
データ分析のためのAWS Well-Architected -Data Analytics Lens-
maru1981
0
2.1k
「データレイク」という言葉だけ知ってる人がAWS Lake Formationをはじめてみる/DevelopersIO2021 DECADE Try AWS Lake Formation for the first time
maru1981
1
2.5k
AWS環境見直しの第一歩「AWS請求代行サービス」のご紹介/Classmethod Members
maru1981
0
1.1k
[JAWS-UG Osaka]セキュリティ、ネットワークまわりのちょいテク
maru1981
0
2.2k
AWSではじめるBlockchain/[DevelopersIO 2019 in OSAKA]Blockchain starting with AWS
maru1981
0
2.1k
AWSではじめるBlockchain/Blockchain starting with AWS
maru1981
0
1.6k
[HIGOBASHI.AWS] #9 re:Invent 2018 の新サービス紹介(AWSインフラ編)
maru1981
0
1.1k
Other Decks in Technology
See All in Technology
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
9
4.4k
AgentCore Runtime上にAgentic Coding基盤を構築・展開する際の設計ポイントと限界点 / Design considerations and limitations when building an agentic coding platform on AgentCore Runtime
har1101
4
230
Genieを崇めよ
kameitomohiro
0
160
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
25
16k
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
4
640
Reactの設計論
uhyo
24
13k
HRC_Frontend_Conference_Fukuoka_2026.pdf
ts020
0
740
AIに任せた品質は、誰が見立てるのか - AI時代のテストマネジメント
nakanao
3
2k
銀行勘定系システムにおける開発プロセス刷新×AIによる環境モダナイゼーション / Development Process Transformation and AI-Driven Environment Modernization
muit
1
2.3k
Claude Codeを「使うほど育つ」AI秘書にするノウハウ
minorun365
PRO
31
26k
事業課題から技術的負債に向き合う
sansantech
PRO
2
1.9k
作品が生態系になった ─ Mini Tokyo 3D から世界へ
nagix
0
190
Featured
See All Featured
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
410
KATA
mclloyd
PRO
35
15k
Navigating Team Friction
lara
192
16k
Unsuck your backbone
ammeep
672
58k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.6k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
300
The SEO Collaboration Effect
kristinabergwall1
1
570
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Transcript
Amazon CloudFront ΛͬͯΈΑ͏ʂ
εϥΠυޙͰೖख͢Δ͜ͱ͕ग़དྷ·͢ͷͰ ൃදதͷ༰ΛϝϞ͢Δඞཁ͋Γ·ͤΜɻ ࣸਅࡱӨΛ͢Δ߹ ϑϥογϡɾγϟολʔԻ͕ग़ͳ͍Α͏ʹྀ͍ͩ͘͝͞ Attention
!3 ࣗݾհ ؙໟ ಞ࢙ʢϚϧϞΞπγʣ AWS ࣄۀຊ෦ ίϯαϧςΟϯά෦ॴଐ • ιϦϡʔγϣϯΞʔΩςΫτ •
20181݄ʹ Join - 18ؒɺਆށͷ SIer ͰΠϯϑϥΤϯδχΞ • ͖ͳ AWS αʔϏε - CloudFront / Lambda@Edge
ࠓɺ͢͜ͱ͞ͳ͍͜ͱ • ͢͜ͱ • CloudFront Λ͏ࡍͷઃఆ߲ͳͲ • ͞ͳ͍͜ͱ
• CloudFront ͷࡉ͔ͳػೳɺੑೳͳͲ ʢAWS Black Belt Λ؍͍ͯͩ͘͞ʣ ɹhttps://aws.amazon.com/jp/aws-jp-introduction/
$POUFOUT%FMJWFSZ/FUXPLͱʁ https://d1.awsstatic.com/webinars/jp/pdf/services/20170927_AWS-BlackBelt-CloudFront-LambdaEdge.pdf
$%/͕ඞཁͱ͞ΕΕΔഎܠ https://www.thinkwithgoogle.com/marketing-resources/data-measurement/mobile-page-speed-new-industry-benchmarks/ දࣔؼͱͭ ͳ͕Δॏཁ՝
ͬͦ͘͞࡞ͬͯΈΔ
σΟετϦϏϡʔγϣϯͷ࡞ Ұൠతͳ Web αʔό༻్ ϝσΟΞϑΝΠϧͷετϦʔϛϯά ʢΦϦδϯS3ͷΈʣ ࠓ8FCαʔόΛྫʹ ѻ͍·͢
ΦϦδϯઃఆʢ4ΦϦδϯʣ 4όέοτ໊Λࢦఆ ʹ4ΦϦδϯ ΦϦδϯͷλΠϓʹΑͬ ͯ੨෦ͷදࣔม ΘΔ
4ΦϦδϯ Cloudfront S3 http(s) http(s) 4ΦϦδϯͷ߹ɺ4੩త8FCϗεςΟϯάΛ༗ޮʹ͠ͳͯ͘ 8FCίϯςϯπΛެ։͢Δ͜ͱ͕ग़དྷ·͢
ΦϦδϯઃఆʢ4ΦϦδϯʣ 4Λެ։ͤͣɺ$MPVE'SPOUܦ༝ ͰͷΈΞΫηεΛڐՄ͢Δ ʢΦϦδϯΞΫηεΞΠσϯςΟςΟʣ ΦϦδϯΞΫηεΞΠσϯςΟςΟ ͷઃఆʢ৽نɺطଘʣ <(SBOU3FBEʙ>Λ:FTʹ͢Δͱ4 όέοτϙϦγʔʹࣗಈతʹՃ
ͯ͘͠ΕΔ
4όέοτϙϦγʔʢΦϦδϯΞΫηεΞΠσϯςΟςΟʔʣ { "Version": "2008-10-17", "Id": "PolicyForCloudFrontPrivateContent", "Statement": [
{ "Sid": "1", "Effect": “Allow", "Principal": { "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E2QTWXXXHMIAHQ" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::<όέοτ໊>/*" } ] }
ΦϦδϯઃఆʢΧελϜΦϦδϯʣ 4όέοτҎ֎Λࢦఆ ʹΧελϜΦϦδϯ ΦϦδϯͰ)5514ଓ͢Δͱ͖ ͷ44-ϓϩτίϧࢦఆ 㱠$MPVE'SPOUͰड͚Δ44- ϓϩτίϧͷࢦఆͰͳ͍
ΧελϜΦϦδϯ Cloudfront EC2 http(s) http(s) &$Λࢦఆ͢Δύλʔϯ
ΧελϜΦϦδϯ Cloudfront EC2 http(s) http(s) &-#ΛڬΉ߹ɺ&-#ΛΦϦδϯʹࢦఆ http(s) EC2
ELB
ΧελϜΦϦδϯ Cloudfront αʔόʔ http(s) http(s) "84ڥ֎ΦϦδϯʹࢦఆͰ͖·͢
ΦϦδϯઃఆʢΧελϜΦϦδϯʣ 4੩త8FCϗεςΟϯά ʹΧελϜΦϦδϯ
ΦϦδϯઃఆʢΧελϜΦϦδϯʣ { "Version": "2008-10-17", "Id": "PolicyForCloudFrontPrivateContent", "Statement": [
{ "Sid": "1", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::<όέοτ໊>/*" } ] } 48FCϗεςΟϯά͕ΦϦδϯͷ߹ɺό έοτϙϦγʔͰ$MPVE'SPOU͕ (FU0CKFDUग़དྷΔΑ͏ʹઃఆ͕ඞཁɻ ࠨهͷྫɺʮύϒϦοΫެ։ʯʹͳΓ·͢ɻ
ΧελϜΦϦδϯ Cloudfront S3 http(s) http 4੩త8FCϗεςΟϯάIUUQͷΈʹͳΓ·͢ Web ϗεςΟϯά༗ޮ
ΦϦδϯઃఆʢΧελϜΦϦδϯʣ ɾ)5510OMZ ɹˠ$MPVE'SPOUͰऴ ɾ)55140OMZ ɹˠऴͤͣʹΦϦδϯʹྲྀ͢ ɹʢΦϦδϯଆʹূ໌ॻ͕ඞཁʣ ɾ.BUDI7JFXFS ɹˠΞΫηεݩͷࢦఆʹैͬͯ
ɹɹ্هͷ͍ͣΕ͔ ɾ0SJHJO3FTQPOTF5JNFPVU ɹˠΦϦδϯ͔ΒͷԠͪ࣌ؒ ɾ0SJHJO,FFQBMJWF5JNFPVU ɹˠΦϦδϯؒͷ5$1ଓͷ࣋ଓ࣌ؒ ɾ)5511PSU)55141PSU ɹˠΦϦδϯͷ-*45&/ϙʔτ൪߸
$MPVE'SPOUͱΦϦδϯؒΛ)5514ʹ͢Δ߹ Cloudfront EC2 http(s) https ҎԼͷ͍ͣΕ͔ɺ·ͨ྆ํʹҰக͢Δূ໌ॻ͕ඞཁ ɹɾΦϦδϯͷl0SJHJO%PNBJO/BNFzͷ ɹɾ)PTUϔομʔΛసૹ͢Δ߹ɺ)PTUϔομʔͷ
http(s) EC2 ELB
$MPVE'SPOUͱΦϦδϯؒΛ)5514ʹ͢Δ߹ Cloudfront EC2 http(s) https $MPVE'SPOUͱΦϦδϯؒͷ)5514ʹ ࣗݾॺ໊ʢΦϨΦϨʣূ໌ॻ͑·ͤΜ http(s)
EC2 ELB
ࢀߟϒϩάͷհ https://dev.classmethod.jp/cloud/aws/2way-to-use-https-from-cloudfront-to-custom-origin/
ΦϦδϯઃఆ ΦϦδϯʹసૹ͢Δͱ͖ʹৗʹ ΧελϜϔομʔΛؚΊΔ ʢར༻ྫʣ ɾΦϦδϯଆͰΞΫηεݩͷ ɹσΟετϦϏϡʔγϣϯͷಛఆ ɾΦϦδϯଆͰ$MPVE'SPOUͷ ɹόΠύεΛఆ
Ωϟογϡಈ࡞ʢ#FIBWJPSʣઃఆ ࡞ޙɺݸผͷ1BUI1BUUFSO࡞Ͱ͖·͢ $MPVE'SPOUͷϓϩτίϧϙϦγʔ ڐՄ͢Δ)551ϝιου Ωϟογϡ͢Δ)551ϝιου ɾ(&5ɺ)&"%ɺʢ015*0/4ʣͷΈ ɾͦͷଞΩϟογϡ͠·ͤΜ ϑΟʔϧυϨϕϧ҉߸Խɿ
ػີσʔλʢΫϨδοτ൪߸ͳͲʣѻ͏߹ɺ)5514 Ͱߋʹ҉߸Խɻ1$*%44ͷίϯϓϥΠΞϯεཁ݅ͳͲɻ ʢύϒϦοΫΩʔϓϥΠϕʔτΩʔ࡞ඞཁʣ ɾઃఆޙ ϦΫΤετຖʹ
Ωϟογϡಈ࡞ʢ#FIBWJPSʣઃఆ ϦΫΤετϔομʹجͮ͘Ωϟογϡઃఆ l/POFzɿσϑΥϧτϔομͷΈసૹ͞ΕΔɻ ɹɹɹɹɹམͱ͞ΕΔϔομϚχϡΞϧࢀর l8IJUFMJTUzɿࢦఆ͞Εͨϔομͯ͢ͷʹ ɹɹɹɹɹɹɹج͖ͮΩϟογϡ͞ΕΔɻ ɹɹɹɹɹɹʢࢦఆ͞ΕͨϔομΦϦδϯʹ
ɹɹɹɹɹɹɹసૹ͞ΕΔʣ l"--zɿɹͯ͢ͷϔομΛΦϦδϯʹసૹ ɹɹɹɹɹ$MPVE'SPOUΦϒδΣΫτΛ ɹɹɹɹɹΩϟογϡ͠·ͤΜ ɹɹɹɹɹ ଟ͘ͷϔομΛࢦఆ͢ΔͱΩϟογϡޮ͕Լ͕Δ ˠΦϦδϯͷෛՙ͕͕͋Δ ·ͨɺϔομͷେจࣈখจࣈΛ۠ผ͠·͢ ʢϔομ໊۠ผ͞Εͳ͍ʣ
8IJUFMJTUͷ༻ྫ ϚϧνσόΠεରԠͷαΠτͰɺσόΠελΠϓʹ ΑͬͯΩϟογϡΛ͚͍ͨ ɹˠ6TFS"HFOUΛసૹ͢Εྑ͍ʁ 6TFS"HFOUͷྫ .P[JMMB .BDJOUPTI*OUFM.BD049@@ "QQMF8FC,JU
,)5.- MJLF(FDLP $ISPNF4BGBSJ ˢ͜Εʹ߹க͠ͳ͍ͱΩϟογϡࢀর͞Εͳ͍ ʢΩϟογϡޮ͕ѱ͍ʣ
8IJUFMJTUͷ༻ྫ ϚϧνσόΠεରԠͷαΠτͰɺσόΠελΠϓʹ ΑͬͯΩϟογϡΛ͚͍ͨ ɹˠ$MPVE'SPOUͷΧελϜϔομΛ͏ w$MPVE'SPOU*T.PCJMF7JFXFS w$MPVE'SPOU*T5BCMFU7JFXFS w$MPVE'SPOU*T%FTLUPQ7JFXFS ύλʔϯΛগͳͯ͘͠ΩϟογϡޮΛ্͛Δ
ݩͷ6TFS"HFOU͔Βఆ͠ɺ zUSVFz͔lGBMTFz͕ηοτ͞ΕΔ
ࢀߟϒϩάͷհ https://dev.classmethod.jp/cloud/aws/cloudfront-mobile-device-detection/
Ωϟογϡಈ࡞ʢ#FIBWJPSʣઃఆ ΦϦδϯͷl$BDIF$POUSPMzϔομͰ੍ޚ͢Δ ߹ɺ<6TF0SJHJO$BDIF)FBEFST>Λબ z$BDIF$POUSPMzϔομʹؔͳ͘ɺ$MPVE'SPOU ͷ55-Ͱཧ͢Δ߹ɺ <$VTUPNJ[F>Λબ l$BDIF$POUSPMzϔομ͕ͳ͍߹ɺ .JOJNVN%FGBVMUͷେ͖͍ʹै͏ɻͦͷଞύ
λʔϯଟذʹΘͨΔͷͰɺϚχϡΞϧͷදΛࢀরɻ ʮ55-Ωϟογϡ͞Εͳ͍ʯͰͳ͍ɻʢࢀߟهࣄʣ Ωϟογϡͤͨ͘͞ͳ͍ͷͰ͋Εɺ <$BDIF#BTFEPO4FMFDUFE3FRVFTU)FBEFST>Ͱl"--zΛࢦఆ
Ωϟογϡಈ࡞ʢ#FIBWJPSʣઃఆ $PPLJFʹجͮ͘Ωϟογϡɿ l/POFzɿ $PPLJFʹجͮ͘ΩϟογϡΛ͠ͳ͍ɻ 4ΦϦδϯ͓Αͼ$PPLJFΛॲཧ͠ͳ͍ΦϦδ ϯʹ/POF͕ਪɻ ʢ$PPLJFͷͰԠ͕มΘΒͳ͍߹ɺ ɹΩϟογϡޮ͕Լ͕Δ͚ͩʣ
l8IJUFMJTUzɿ 8IJMUFMJTUʹͳ͍$PPLJFͯ͢আ͞Ε· ͢ɻࢦఆ͞Εͨ$PPLJF͓Αͼͦͷʹج͖ͮ Ωϟογϡ͢Δɻ l"--zɿ ͯ͢ͷ$PPLJFΛΦϦδϯʹసૹɻ$PPLJF ͓Αͼͦͷʹج͖ͮΩϟογϡ͢Δɻ $PPLJF໊ͱେจࣈখจࣈΛ۠ผ͠·͢ ˠྫ͑+BQBOɺ+"1"/ผͷΩϟογϡͱͯ͠ॲཧ͞ΕΔ ˠΩϟογϡޮΛ্͛ΔͨΊʹඪ४Խͨ͠ํ͕ྑ͍
Ωϟογϡಈ࡞ʢ#FIBWJPSʣઃఆ ΫΤϦจࣈྻʹجͮ͘Ωϟογϡɿ l/POFzɿ ΦϦδϯ͕ΫΤϦจࣈྻʹؔͳ͘ಉ͡όʔ δϣϯΛฦ͢߹ɻ l'PSXBSEBMM DBDIFCBTFEPOXIJUFMJTUzɿ
ΦϦδϯ͕ͭҎ্ͷΫΤϦจࣈྻύϥϝʔ λʹج͍ͮͯΦϒδΣΫτͷόʔδϣϯ͕ҟ Δ߹ʹબɻ l'PSXBSEBMM DBDIFCBTFEPOBMMɿ ΦϦδϯαʔό͕ͯ͢ͷΫΤϦจࣈྻύϥ ϝʔλʹ͍ͭͯΦϒδΣΫτͷόʔδϣϯ͕ ҟΔ߹ʹબɻ ύϥϝʔλ໊ͱͷ྆ํͰେจࣈখจࣈΛ۠ผ͠·͢ ύϥϝʔλॱং͕ҟΔͱผͷΦϒδΣΫτͱͯ͠Ωϟογϡ͠·͢ɻ ʢΩϟογϡޮΛ্͛Δʹඪ४Խͤ͞Δ͜ͱʣ ˠUFTUIUNM DPMPSSFETJ[FMBSHFͱ ɹUFTUIUNM TJ[FMBSHFDPMPSSFEผͷΦϒδΣΫτʹͳΔ
એɿඪ४Խͤ͞Δํ๏ https://dev.classmethod.jp/cloud/aws/normalizing-query-string/
Ωϟογϡಈ࡞ʢ#FIBWJPSʣઃఆ .44NPPUI4USFBNJOHܗࣜͷϝσΟΞϑΝΠϧ ৴Ͱɺ**4αʔό͕ແ͍߹<ZFT> ʢ**4Λ༻ͤͣʹ.44NPPUI4USFBNJOH͢Δʣ ॺ໊͖63-·ͨɺॺ໊͖$PPLJFΛ༻͢Δ ߹<ZFT>ʢϓϥΠϕʔτίϯςϯπͷ৴ͳͲʣ ΦϒδΣΫτΛࣗಈతʹѹॖɿ ϦΫΤετϔομʹ"DDFQU&ODPEJOHH[JQ͕
ؚ·ΕΔ߹ʹࣗಈతʹѹॖͤ͞Δɻ -BNCEB!&EHFɿ ΤοδϩέʔγϣϯͰ-BNCEBؔΛ࣮ߦ͠ɺ)551ϔομɺ ϦΫΤετϘσΟʹॲཧΛՃ͑ΔͳͲՄೳ
σΟετϦϏϡʔγϣϯઃఆ ྉۚΫϥεɿ l6TF0OMZ64 $BOBEBBOE&VSPQFz l6TF64 $BOBEB &VSPQF "TJBBOE"GSJDBz
l6TF"MM&EHF-PDBUJPOTʢ#FTU1FSGPSNBODFʣz ೆถͳͲߴίετͷϦʔδϣϯΛ֎͢߹ɺมߋɹɹɹ "848"'Σϒ"$-ɿ $MPVE'SPOUʹ"848"'Λઃఆ͢Δ߹ɻ *1੍ݶͳͲ8"'Λར༻͢Δͱ؆୯ʹઃఆՄೳɻ ΑΓߴͳ੍ݶɻΣϒ"$-ઃఆ"848"' ཧը໘͔Βɻɹɹ ସυϝΠϯ໊ʢ$/".&ʣɿ YYYDMPVEGSPOUOFUͰͳ͘ɺΧελϜυϝΠϯͰΞΫηε͍ͤͨ͞߹ʹ̍ͭҎ্ࢦఆ %/4αʔϏεͰ$/".&Ϩίʔυͷొඞཁ ҙɿΞΧϯτ֎ʹؔΘΒͣɺ͢Ͱʹ$/".&ઃఆ͞Ε͍ͯΔସυϝΠϯ໊ࢦఆग़དྷ·ͤΜɻ ʢॏෳͰ͖ͳ͍ˠ$MPVE'SPOUͱ͍͏"84ͷڊେͳαʔόʹ໊લϕʔεͷόʔνϟϧϗετߏ͢ΔΠϝʔδʹ͍ۙʣ
σΟετϦϏϡʔγϣϯઃఆ DMPVEGSPOUOFUͰ༻͢Δ߹ ηΩϡϦςΟϙϦγʔɺ ࣗಈతʹʮ5-4WʯʹͳΓ·͢ 44-ূ໌ॻ ΧελϜ44-ূ໌ॻɿ "84$FSUJpDBUF.BOBHFS "$.
ʹొ͞Εͨূ໌ॻ͔Βબɻ "$.ͷແྉূ໌ॻ͕ར༻Մೳ ˠূ໌ॻʮόʔδχΞʯϦʔδϣϯͰ࡞͕ඞཁ
σΟετϦϏϡʔγϣϯઃఆ 4/*ରԠΫϥΠΞϯτͷΈͷ߹ ΧελϜ44-ΫϥΠΞϯταϙʔτɿ ʢΧελϜ44-ূ໌ॻར༻ͷ߹ͷΈʣ ηΩϡϦςΟϙϦγʔɿ 4/*ͷ߹ɿ5-4W5-4W@5-4W@5-4W@͔Βબ "MM$MJFOUTͷ߹ɿ5-4W44-W͔Βબ ʢ֤ηΩϡϦςΟϙϦγʔͷαϙʔτϓϩτίϧϚχϡΞϧΛࢀরʣ
4/*ඇରԠΫϥΠΞϯταϙʔτ͢ Δ߹ʢઐ༻*1Φϓγϣϯʣ ˠֹ݄ྉۚ
σΟετϦϏϡʔγϣϯઃఆ αϙʔτ͞ΕΔ)551όʔδϣϯɿ ɹɹɹɹ σϑΥϧτϧʔτΦϒδΣΫτɿ ΦϒδΣΫτࢦఆͷͳ͍ΞΫηεʹରͯ͠ಛఆͷυΩϡϝ ϯτΛฦ͢߹ʹઃఆ ྫʣ ɾIUUQTFYBNQMFDPN
ˠIUUQTFYBNQMFDPNJOEFYIUNMͱͯ͠ॲཧ ҙɿ αϒσΟϨΫτϦʹରԠ͠·ͤΜɻ ɾIUUQTFYBNQMFDPNTVC ɹɹˠJOEFYIUNMฦΓ·ͤΜɻΦϦδϯଆͰཁରԠɻ ɹɹˠ4ΦϦδϯͷ߹ɺͲ͏͢Δɾɾɾ
એɿඪ४Խͤ͞Δํ๏ https://dev.classmethod.jp/cloud/aws/directory-indexes-in-s3-origin-backed-cloudfront/
σΟετϦϏϡʔγϣϯઃఆ ΞΫηεϩάͷ༗ޮԽɿ ϦΞϧλΠϜʹ৴͞Ε·ͤΜʢϕετΤϑΥʔτʣ ·ͨɺكʹҰ৴͞Εͳ͍͜ͱ͋Δɻ อଘઌͷόέοτ͓ΑͼɺϓϨϑΟοΫεͷࢦఆɿ ඞཁͳΞΫηείϯτϩʔϧϦετʢ"$-ʣࣗಈతʹ༩ $PPLJFͷϩάͷ࡞ɿ *1WΛ༗ޮʹ͢Δɿ
ॺ໊͖63-·ͨॺ໊͖$PPLJFΛ༻͠ɺ*Q"EESFTTύϥ ϝʔλʹΑΔΞΫηε੍ݶΛ͍ͯ͠Δ߹ɺ*1W༗ޮʹ͠ͳ͍ σΟετϦϏϡʔγϣϯͷঢ়ଶɿ σϓϩΠޙʹσΟετϦϏϡʔγϣϯΛ༗ޮɺ ·ͨແޮʹ͢Δ͔Λબ Ͱɺ࡞ʂ
͋ͱΦϦδϯɺ#FIBWJPSΛඞཁʹԠͯ͡Ճ ෳͷΦϦδϯΛ࡞͠ɺ #FIBWJPS͝ͱʹ ҟͳΔΦϦδϯΛࢦఆͰ͖·͢
ΩϟογϡআͰ͖·͢ *OWBMJEBUJPOͰΩϟογϡΛআ͢Δ͜ͱՄೳ ɾޡͬͨΩϟογϡͷআ ɾΩϟογϡΛআ͠ɺଈ࣌ө͍ͤͨ͞ɹ ҙɿ *OWBMJEBUJPOɺ݄ؒύεҎ্͔Β ϦΫΤετύεຖʹ՝ۚ͞Ε·͢ɻ
ରύεʢΦϒδΣΫτͰͳ͍ʣ JNBHF ͰԼͷ ΦϒδΣΫτΛແޮԽ ͯ͠Χϯτύεɻ JNBHFUFTUKQHͷࢦఆΧϯτύε ಉ࣮࣌ߦͰ͖ΔϫΠϧυΧʔυͷ*OWBMJEBUJPO ύε·Ͱͷ੍ݶ
·ͱΊ
·ͱΊ • ΦϦδϯʹʮS3ΦϦδϯʯʮΧελϜΦϦδϯʯ͕͋Δ • λΠϓʹΑͬͯग़དྷΔ͜ͱɺग़དྷͳ͍͜ͱ͕͋Δ • Ωϟογϡͤ͞ͳ͍߹ɺ”Cache Based
on Selected Request Headers” Λ “ALL” ʹ͢ΔɻʢTTL = 0 Ͱͳ͍ʣ • ϔομɺCookieɺΫΤϦจࣈྻ Ͱɺผόʔδϣϯͱఆ ͞ΕΔج४͕ҟͳΔʢେจࣈখจࣈɺॱংͳͲʣ
·ͱΊ • Ωϟογϡޮ͕Լ͕ΔͱɺવϨεϙϯε͘ͳΓɺ ΦϦδϯͷෛՙ͕͕͋Δ ɹˠΩϟογϡޮԽͷ͕େࣄ ɹɹɹɹɾෆཁͳϔομΛసૹ͠ͳ͍ ɹɹɹɹɾඪ४ԽʢLambda@Edgeͷར༻ͳͲʣ
None