Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan berbagai asal dengan CloudFront distribusi
Saat Anda membuat distribusi, Anda menentukan asal tempat CloudFront mengirim permintaan untuk file. Anda dapat menggunakan beberapa jenis asal dengan CloudFront. Misalnya, Anda dapat menggunakan bucket Amazon S3, MediaStore wadah, MediaPackage saluran, Application Load Balancer, atau fungsi. AWS Lambda URL
Topik
Gunakan bucket Amazon S3
Topik berikut menjelaskan berbagai cara Anda dapat menggunakan bucket Amazon S3 sebagai asal distribusi. CloudFront
Topik
Gunakan bucket Amazon S3 standar
Saat Anda menggunakan Amazon S3 sebagai asal untuk distribusi Anda, Anda menempatkan objek yang CloudFront ingin Anda kirimkan dalam ember Amazon S3. Anda dapat menggunakan metode apa pun yang didukung oleh Amazon S3 untuk memasukkan objek Anda ke Amazon S3. Misalnya, Anda dapat menggunakan konsol Amazon S3 atauAPI, atau alat pihak ketiga. Anda dapat membuat hierarki di bucket untuk menyimpan objek, seperti yang Anda lakukan dengan bucket Amazon S3 standar lainnya.
Menggunakan bucket Amazon S3 yang ada karena server CloudFront asal Anda tidak mengubah bucket dengan cara apa pun; Anda masih dapat menggunakannya seperti biasa untuk menyimpan dan mengakses objek Amazon S3 dengan harga Amazon S3 standar. Anda dikenakan biaya Amazon S3 untuk menyimpan objek di dalam bucket. Untuk informasi selengkapnya tentang tagihan yang akan digunakan CloudFront, lihat CloudFrontHarga Amazon
penting
Agar bucket Anda berfungsi CloudFront, nama harus sesuai dengan persyaratan DNS penamaan. Untuk informasi selengkapnya, buka Aturan penamaan Bucket di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
Saat Anda menentukan bucket Amazon S3 sebagai asal CloudFront, sebaiknya gunakan format berikut:
bucket-name
.s3.region
.amazonaws.com
Saat menentukan nama bucket dalam format ini, Anda dapat menggunakan CloudFront fitur berikut:
-
Konfigurasikan CloudFront untuk berkomunikasi dengan bucket Amazon S3 Anda menggunakanSSL/. TLS Untuk informasi selengkapnya, lihat Gunakan HTTPS dengan CloudFront.
-
Gunakan kontrol akses asal untuk mengharuskan pemirsa mengakses konten Anda menggunakan CloudFrontURLs, bukan dengan menggunakan Amazon S3URLs. Untuk informasi selengkapnya, lihat Batasi akses ke asal Amazon Simple Storage Service.
-
Perbarui konten bucket Anda dengan mengirimkan
POST
danPUT
meminta. CloudFront Untuk informasi selengkapnya, lihat HTTPmetode dalam topik Cara CloudFront memproses dan meneruskan permintaan ke asal Amazon S3 Anda.
Jangan tentukan bucket menggunakan format berikut:
-
Gaya jalur Amazon S3:
s3.amazonaws.com/
bucket-name
-
Amazon S3 CNAME
Gunakan Amazon S3 Object Lambda
Saat Anda membuat Titik Akses Objek Lambda, Amazon S3 secara otomatis menghasilkan alias unik untuk Titik Akses Objek Lambda Anda. Anda dapat menggunakan alias ini alih-alih nama bucket Amazon S3 sebagai asal distribusi Anda. CloudFront
Bila Anda menggunakan alias Object Lambda Access Point sebagai asal untuk CloudFront, kami sarankan Anda menggunakan format berikut:
alias
.s3.region
.amazonaws.com
Untuk informasi selengkapnya tentang menemukan
, lihat Cara menggunakan alias gaya ember untuk S3 bucket Object Lambda Access Point di Panduan Pengguna Amazon S3.alias
penting
Bila Anda menggunakan Object Lambda Access Point sebagai asal untuk CloudFront, Anda harus menggunakan kontrol akses asal.
Untuk contoh kasus penggunaan, lihat Menggunakan Lambda Objek Amazon S3 dengan CloudFront Amazon untuk Menyesuaikan Konten untuk Pengguna Akhir
CloudFront memperlakukan asal Object Lambda Access Point sama dengan asal bucket Amazon S3 standar.
Jika Anda menggunakan Amazon S3 Object Lambda sebagai asal untuk distribusi Anda, Anda harus mengonfigurasi empat izin berikut.
Gunakan Titik Akses Amazon S3
Saat Anda menggunakan Titik Akses S3, Amazon S3 secara otomatis menghasilkan alias unik untuk Anda. Anda dapat menggunakan alias ini alih-alih nama bucket Amazon S3 sebagai asal distribusi Anda. CloudFront
Saat Anda menggunakan alias Titik Akses Amazon S3 sebagai asal CloudFront, kami sarankan Anda menggunakan format berikut:
alias
.s3.region
.amazonaws.com
Untuk informasi selengkapnya tentang menemukan
, lihat Menggunakan alias gaya ember untuk titik akses bucket S3 di Panduan Pengguna Amazon S3.alias
penting
Saat Anda menggunakan Titik Akses Amazon S3 sebagai asal CloudFront, Anda harus menggunakan kontrol akses asal.
CloudFront memperlakukan asal Titik Akses Amazon S3 sama dengan asal bucket Amazon S3 standar.
Jika Anda menggunakan Amazon S3 Object Lambda sebagai asal untuk distribusi Anda, Anda harus mengonfigurasi dua izin berikut.
Menggunakan bucket Amazon S3 yang dikonfigurasi sebagai titik akhir situs web
Anda dapat menggunakan bucket Amazon S3 yang dikonfigurasi sebagai titik akhir situs web sebagai asal kustom. CloudFront Saat mengonfigurasi CloudFront distribusi, untuk asal, masukkan titik akhir hosting situs web statis Amazon S3 untuk bucket Anda. Nilai ini muncul di konsol Amazon S3
http://
bucket-name
.s3-website-region
.amazonaws.com
Untuk informasi selengkapnya tentang menentukan titik akhir situs web statis Amazon S3, lihat Titik akhir situs web di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
Saat Anda menentukan nama bucket dalam format ini sebagai asal Anda, Anda dapat menggunakan pengalihan Amazon S3 dan dokumen kesalahan kustom Amazon S3. Untuk informasi selengkapnya, lihat Mengonfigurasi dokumen kesalahan kustom dan Mengonfigurasi pengalihan di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon. (CloudFrontjuga menyediakan halaman kesalahan kustom. Untuk informasi lebih lanjut, lihatBuat halaman kesalahan khusus untuk kode HTTP status tertentu.)
Menggunakan bucket Amazon S3 sebagai server CloudFront asal Anda tidak mengubah bucket dengan cara apa pun. Anda masih dapat menggunakannya seperti biasa dan Anda mengeluarkan biaya Amazon S3 biasa. Untuk informasi selengkapnya tentang tagihan yang akan digunakan CloudFront, lihat CloudFront Harga Amazon
catatan
Jika Anda menggunakan CloudFront API untuk membuat distribusi dengan bucket Amazon S3 yang dikonfigurasi sebagai titik akhir situs web, Anda harus mengonfigurasinya dengan menggunakanCustomOriginConfig
, meskipun situs web di-host di bucket Amazon S3. Untuk informasi selengkapnya tentang membuat distribusi menggunakan CloudFront API, lihat CreateDistributiondi CloudFront APIReferensi Amazon.
Tambahkan CloudFront ke bucket Amazon S3 yang ada
Jika Anda menyimpan objek Anda di bucket Amazon S3, Anda dapat meminta pengguna mendapatkan objek Anda langsung dari S3, atau Anda dapat mengonfigurasi CloudFront untuk mendapatkan objek Anda dari S3 dan kemudian mendistribusikannya ke pengguna Anda. Menggunakan CloudFront bisa lebih hemat biaya jika pengguna Anda sering mengakses objek Anda karena, pada penggunaan yang lebih tinggi, harga untuk transfer CloudFront data lebih rendah daripada harga untuk transfer data Amazon S3. Selain itu, unduhan lebih cepat CloudFront dibandingkan dengan Amazon S3 saja karena objek Anda disimpan lebih dekat ke pengguna Anda.
catatan
Jika Anda CloudFront ingin menghormati pengaturan berbagi sumber daya lintas asal Amazon S3, konfigurasikan CloudFront untuk meneruskan Origin
header ke Amazon S3. Untuk informasi selengkapnya, lihat Konten cache berdasarkan header permintaan.
Jika saat ini Anda mendistribusikan konten langsung dari bucket Amazon S3 menggunakan nama domain Anda sendiri (seperti example.com) alih-alih nama domain bucket Amazon S3 Anda (seperti amzn-s3-demo-bucket. s3.us-west-2.amazonaws.com), Anda dapat menambahkan tanpa gangguan dengan menggunakan prosedur berikut. CloudFront
Untuk menambahkan CloudFront ketika Anda sudah mendistribusikan konten Anda dari Amazon S3
-
Buat CloudFront distribusi. Untuk informasi selengkapnya, lihat Buat distribusi.
Saat Anda membuat distribusi, sebutkan nama bucket Amazon S3 Anda sebagai server asal.
penting
Agar bucket Anda berfungsi CloudFront, nama harus sesuai dengan persyaratan DNS penamaan. Untuk informasi selengkapnya, buka Aturan penamaan Bucket di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
Jika Anda menggunakan CNAME dengan Amazon S3, tentukan juga CNAME untuk distribusi Anda.
-
Buat halaman web uji yang berisi tautan ke objek yang dapat dibaca publik di buket Amazon S3, dan uji tautan. Untuk pengujian awal ini, gunakan nama CloudFront domain distribusi Anda di objekURLs, misalnya,
https://d111111abcdef8.cloudfront.net/images/image.jpg
.Untuk informasi lebih lanjut tentang format CloudFront URLs, lihatKustomisasi URL format untuk file di CloudFront.
-
Jika Anda menggunakan Amazon S3CNAMEs, aplikasi Anda menggunakan nama domain Anda (misalnya, example.com) untuk mereferensikan objek di bucket Amazon S3 alih-alih menggunakan nama bucket Anda (misalnya, amzn-s3-demo-bucket.s3.amazonaws.com). Untuk terus menggunakan nama domain Anda ke objek referensi alih-alih menggunakan nama CloudFront domain untuk distribusi Anda (misalnya, d111111abcdef8.cloudfront.net), Anda perlu memperbarui pengaturan dengan penyedia layanan Anda. DNS
Agar Amazon S3 CNAMEs berfungsi, penyedia DNS layanan Anda harus memiliki catatan CNAME sumber daya yang ditetapkan untuk domain Anda yang saat ini merutekan kueri domain ke bucket Amazon S3 Anda. Misalnya, jika pengguna meminta objek ini:
https://example.com/images/image.jpg
Permintaan secara otomatis dialihkan rutenya, dan pengguna melihat objek ini:
https://
amzn-s3-demo-bucket
.s3.amazonaws.com/images/image.jpgUntuk merutekan kueri ke CloudFront distribusi, bukan bucket Amazon S3, Anda harus menggunakan metode yang disediakan oleh penyedia layanan untuk memperbarui CNAME kumpulan data sumber daya untuk domain DNS Anda. CNAMECatatan yang diperbarui ini mengalihkan DNS kueri dari domain Anda ke nama CloudFront domain untuk distribusi Anda. Untuk informasi selengkapnya, lihat dokumentasi yang disediakan oleh penyedia DNS layanan Anda.
catatan
Jika Anda menggunakan Route 53 sebagai DNS layanan, Anda dapat menggunakan kumpulan catatan CNAME sumber daya atau kumpulan catatan sumber daya alias. Untuk informasi tentang mengedit kumpulan rekaman sumber daya, lihat Mengedit catatan. Untuk informasi tentang kumpulan rekaman sumber daya alias, lihat Memilih antara catatan alias dan non-alias. Kedua topik tersebut berada dalam Panduan Pengembang Amazon Route 53.
Untuk informasi lebih lanjut tentang menggunakan CNAMEs with CloudFront, lihatGunakan kustom URLs dengan menambahkan nama domain alternatif (CNAMEs).
Setelah Anda memperbarui kumpulan catatan CNAME sumber daya, diperlukan waktu hingga 72 jam agar perubahan menyebar ke seluruh DNS sistem, meskipun biasanya terjadi lebih cepat. Selama waktu ini, beberapa permintaan untuk konten Anda akan terus dialihkan ke bucket Amazon S3 Anda, dan yang lainnya akan diarahkan ke. CloudFront
Pindahkan bucket Amazon S3 ke bucket yang berbeda Wilayah AWS
Jika Anda menggunakan Amazon S3 sebagai asal CloudFront distribusi dan Anda memindahkan bucket ke yang lain Wilayah AWS, CloudFront dapat memakan waktu hingga satu jam untuk memperbarui catatannya agar menggunakan Wilayah baru jika kedua hal berikut ini benar:
-
Anda menggunakan CloudFront origin access identity (OAI) untuk membatasi akses ke bucket.
-
Anda memindahkan bucket ke Amazon S3 Region yang memerlukan Signature Version 4 untuk otentikasi.
Saat Anda CloudFront menggunakanOAIs, gunakan Region (di antara nilai lainnya) untuk menghitung tanda tangan yang digunakan untuk meminta objek dari bucket Anda. Untuk informasi lebih lanjut tentangOAIs, lihatGunakan identitas akses asal (warisan, tidak disarankan). Untuk daftar dukungan Signature Version 2, lihat proses penandatanganan Signature Version 2 di Referensi Umum Amazon Web Services. Wilayah AWS
Untuk memaksa pembaruan yang lebih cepat ke CloudFront catatan, Anda dapat memperbarui CloudFront distribusi Anda, misalnya, dengan memperbarui bidang Deskripsi pada tab Umum di CloudFront konsol. Saat Anda memperbarui distribusi, CloudFront segera periksa Wilayah tempat bucket Anda berada. Perbanyakan perubahan ke semua lokasi tepi hanya memakan waktu beberapa menit.
Gunakan MediaStore wadah atau MediaPackage saluran
Untuk melakukan streaming video CloudFront, Anda dapat menyiapkan bucket Amazon S3 yang dikonfigurasi sebagai MediaStore wadah, atau membuat saluran dan titik akhir dengan. MediaPackage Kemudian Anda membuat dan mengkonfigurasi distribusi CloudFront untuk streaming video.
Untuk informasi dan step-by-step instruksi selengkapnya, lihat topik berikut:
Menggunakan Application Load Balancer
Jika asal Anda adalah satu atau beberapa server HTTP (S) (server web) yang dihosting pada satu atau EC2 beberapa instans Amazon, Anda dapat menggunakan Application Load Balancer yang menghadap ke internet untuk mendistribusikan lalu lintas ke instans. Penyeimbang beban yang menghadap ke internet memiliki DNS nama yang dapat diselesaikan secara publik dan mengarahkan permintaan dari klien ke target melalui internet.
Untuk informasi selengkapnya tentang menggunakan Application Load Balancer sebagai asal Anda CloudFront, termasuk cara memastikan bahwa pemirsa hanya dapat mengakses server web Anda melalui CloudFront dan bukan dengan mengakses penyeimbang beban secara langsung, lihat. Membatasi akses ke Application Load Balancers
Gunakan fungsi Lambda URL
Fungsi Lambda URL adalah HTTPS titik akhir khusus untuk fungsi Lambda. Anda dapat menggunakan fungsi Lambda URL untuk membangun aplikasi web tanpa server sepenuhnya di dalam Lambda. Anda dapat memanggil aplikasi web Lambda secara langsung melalui URL fungsi, tanpa perlu berintegrasi API dengan Gateway atau Application Load Balancer.
Jika Anda membangun aplikasi web tanpa server dengan menggunakan fungsi Lambda dengan fungsiURLs, Anda dapat menambahkan CloudFront untuk mendapatkan manfaat berikut:
-
Mempercepat aplikasi Anda dengan menyimpan konten yang lebih dekat dengan pemirsa
-
Gunakan nama domain khusus untuk aplikasi web Anda
-
Rutekan URL jalur yang berbeda ke fungsi Lambda yang berbeda menggunakan perilaku cache CloudFront
-
Blokir permintaan tertentu menggunakan batasan CloudFront geografis atau AWS WAF (atau keduanya)
-
Gunakan AWS WAF dengan CloudFront untuk membantu melindungi aplikasi Anda dari bot berbahaya, membantu mencegah eksploitasi aplikasi umum, dan meningkatkan perlindungan dari serangan DDoS
Untuk menggunakan fungsi Lambda URL sebagai asal untuk CloudFront distribusi, tentukan nama domain lengkap fungsi Lambda URL sebagai domain asal. Nama URL domain fungsi Lambda menggunakan format berikut:
function-URL-ID
.lambda-url.AWS-Region
.on.aws
Bila Anda menggunakan fungsi Lambda URL sebagai asal untuk CloudFront distribusi, fungsi tersebut URL harus dapat diakses publik. Untuk melakukannya, gunakan salah satu opsi berikut:
-
Jika Anda menggunakan kontrol akses asal (OAC),
AuthType
parameter fungsi Lambda URL harus menggunakanAWS_IAM
nilai dan mengizinkanlambda:InvokeFunctionUrl
izin dalam kebijakan berbasis sumber daya. Untuk informasi selengkapnya tentang penggunaan fungsi LambdaOAC, URLs lihat. Batasi akses ke asal URL AWS Lambda fungsi -
Jika tidak digunakanOAC, Anda dapat menyetel
AuthType
parameter fungsiNONE
dan URL mengizinkanlambda:InvokeFunctionUrl
izin dalam kebijakan berbasis sumber daya.
Anda juga dapat menambahkan header asal kustom ke permintaan yang CloudFront dikirim ke asal, dan menulis kode fungsi untuk mengembalikan respons kesalahan jika header tidak ada dalam permintaan. Ini membantu memastikan bahwa pengguna hanya dapat mengakses aplikasi web Anda melalui CloudFront, tidak secara langsung menggunakan fungsi Lambda. URL
Untuk informasi selengkapnya tentang fungsi LambdaURLs, lihat topik berikut di Panduan AWS Lambda Pengembang:
-
Fungsi Lambda URLs - Gambaran umum fitur fungsi Lambda URLs
-
Memanggil URLs fungsi Lambda - Termasuk detail tentang permintaan dan muatan respons yang akan digunakan untuk pengkodean aplikasi web tanpa server Anda
-
Model keamanan dan autentikasi untuk URLs fungsi Lambda - Termasuk detail tentang jenis autentikasi Lambda
Gunakan Amazon EC2 (atau asal kustom lainnya)
Asal kustom adalah server web HTTP (S) dengan DNS nama yang dapat diselesaikan secara publik yang mengarahkan permintaan dari klien ke target melalui internet. Server HTTP (S) dapat di-host di AWS—misalnya, EC2 instans Amazon—atau dihosting di tempat lain. Asal Amazon S3 yang dikonfigurasi sebagai titik akhir situs web juga dianggap sebagai asal kustom. Untuk informasi selengkapnya, lihat Menggunakan bucket Amazon S3 yang dikonfigurasi sebagai titik akhir situs web.
Bila Anda menggunakan HTTP server Anda sendiri sebagai custom origin, Anda menentukan DNS nama server, bersama dengan HTTP dan HTTPS port dan protokol yang CloudFront ingin Anda gunakan saat mengambil objek dari asal Anda.
Sebagian besar CloudFront fitur didukung saat Anda menggunakan custom origin dengan pengecualian konten pribadi. Meskipun Anda dapat menggunakan tanda tangan URL untuk mendistribusikan konten dari asal kustom, CloudFront untuk mengakses asal kustom, asal harus tetap dapat diakses publik. Untuk informasi selengkapnya, lihat Sajikan konten pribadi dengan cookie yang ditandatangani URLs dan ditandatangani.
Ikuti panduan ini untuk menggunakan EC2 instans Amazon dan asal kustom lainnya denganCloudFront.
-
Host dan sajikan konten yang sama di semua server yang menyajikan konten untuk CloudFront asal yang sama. Untuk informasi selengkapnya, lihat Pengaturan asal dalam topik Referensi pengaturan distribusi.
-
Log entri
X-Amz-Cf-Id
header di semua server jika Anda membutuhkan AWS Support atau CloudFront menggunakan nilai ini untuk debugging. -
Batasi permintaan ke HTTP dan HTTPS port tempat asal kustom Anda mendengarkan.
-
Sinkronkan jam semua server dalam implementasi Anda. Perhatikan bahwa CloudFront menggunakan Coordinated Universal Time (UTC) untuk cookie yang ditandatangani URLs dan ditandatangani, untuk log, dan laporan. Selain itu, jika Anda memantau CloudFront aktivitas menggunakan CloudWatch metrik, perhatikan bahwa CloudWatch juga menggunakanUTC.
-
Gunakan server redundan untuk menangani kegagalan.
-
Untuk informasi tentang penggunaan asal kustom untuk menyajikan konten pribadi, lihat Batasi akses ke file pada asal kustom.
-
Untuk informasi tentang perilaku permintaan dan respons serta tentang kode HTTP status yang didukung, lihatPerilaku permintaan dan respons.
Jika Anda menggunakan Amazon EC2 untuk asal kustom, kami sarankan Anda melakukan hal berikut:
-
Gunakan Amazon Machine Image yang secara otomatis menginstal perangkat lunak untuk server web. Untuk informasi selengkapnya, lihat EC2dokumentasi Amazon.
-
Gunakan penyeimbang beban Elastic Load Balancing untuk menangani lalu lintas di beberapa EC2 instans Amazon dan untuk mengisolasi aplikasi Anda dari perubahan pada instans Amazon. EC2 Misalnya, jika Anda menggunakan penyeimbang beban, Anda dapat menambahkan dan menghapus EC2 instans Amazon tanpa mengubah aplikasi Anda. Untuk informasi lebih lanjut, lihat Dokumentasi Penyeimbangan Beban Elastis.
-
Saat Anda membuat CloudFront distribusi, tentukan URL penyeimbang beban untuk nama domain server asal Anda. Untuk informasi selengkapnya, lihat Buat distribusi.
Gunakan grup CloudFront asal
Anda dapat menentukan grup asal untuk CloudFront asal Anda jika, misalnya, Anda ingin mengonfigurasi failover asal untuk skenario saat Anda membutuhkan ketersediaan tinggi. Gunakan failover asal untuk menentukan asal primer CloudFront ditambah asal kedua yang CloudFront secara otomatis beralih ke saat asal utama mengembalikan respons kegagalan kode HTTP status tertentu.
Untuk informasi selengkapnya, termasuk langkah-langkah untuk menyiapkan grup asal, lihatOptimalkan ketersediaan tinggi dengan failover CloudFront asal.