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.2k
「データレイク」という言葉だけ知ってる人がAWS Lake Formationをはじめてみる/DevelopersIO2021 DECADE Try AWS Lake Formation for the first time
maru1981
1
2.5k
AWS環境見直しの第一歩「AWS請求代行サービス」のご紹介/Classmethod Members
maru1981
0
1.2k
[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
OSC2026on_the-world-is-waiting-for-your-voice.pdf
naruoga
0
350
OpenSharing について熱く語る〜AI アセットの共有について〜
kameitomohiro
0
230
KanaAI
shreyas1009
0
150
おそらく日本で唯一のDevRelインターン生として
husengs7
0
170
[2026 Oracle Technical Deep Dive] VMwareワークロードのOCI移行実践ガイド - OCVSでの継続利用からOCIコンピュートへの移行まで (2026年9月17日開催)
oracle4engineer
PRO
0
120
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
280
営業オントロジーの作り方と、エージェントからの辿り方 ── ナレッジワークの現場から
kworkdev
PRO
1
260
自主式軟體工廠
philipz
0
220
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
150
メルペイ 会計システム概要と歴史
mewuto
0
150
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
310
ai_cording_with_k8s_knowledge.pdf
mochizuki875
1
280
Featured
See All Featured
Done Done
chrislema
187
17k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
760
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
300
The Cost Of JavaScript in 2023
addyosmani
55
10k
Side Projects
sachag
456
43k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
510
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
860
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