Sebelumnya kita sudah membuat static website dengan Amazon S3. Selanjutnya Anda akan mempelajari cara setup static website memakai AWS Cloudfront dengan S3
AWS Management Console
Create distribution
Buka CloudFront console
Klik Create a Cloudfront distribution

Tentukan Origin domain dengan S3 Bucket yang sudah dibuat

Pada bagian Allowed HTTP methods bisa kalian tentukan sendiri

Pada Default root object isi dengan nama index document

Terakhir klik Create distribution dan tunggu proses Deploying sampai selesai
AWS CLI
Create distribution
1
aws cloudfront create-distribution --origin-domain-name [bucketname].s3.[region].amazonaws.com --default-root-object index.html
[cloudshell-user@ip-10-6-8-192 ~]$ aws cloudfront create-distribution --origin-domain-name mytopan.s3.ap-southeast-2.amazonaws.com --default-root-object index.html
{
"Location": "https://cloudfront.amazonaws.com/2020-05-31/distribution/E1GWV2BXHHEF8I",
"ETag": "E3RR0DNWCSDOEG",
"Distribution": {
"Id": "E1GWV2BXHHEF8I",
....Apabila ada distribution config maka bisa gunakan perintah
1
aws cloudfront create-distribution --distribution-config file://config-dist.json
Selanjutnya tunggu proses deploying. Untuk mengetahui proses deploy bisa gunakan perintah
1
cloudfront wait distribution-deployed --id E1GWV2BXHHEF8I
Disable distribution
Cek ID distribution
1
aws cloudfront list-distributions
{
"DistributionList": {
"Items": [
{
"Id": "E1GWV2BXHHEF8I",
"ARN": "arn:aws:cloudfront::478876543121:distribution/E1GWV2BXHHEF8I",
"Status": "Deployed",
"LastModifiedTime": "2023-01-12T07:26:33.410000+00:00",
"DomainName": "d1g6zqctbawc9z.cloudfront.net",Export distribution config
1
aws cloudfront get-distribution-config --id E1GWV2BXHHEF8I
[cloudshell-user@ip-10-6-29-96 ~]$ aws cloudfront get-distribution-config --id E1GWV2BXHHEF8I | jq '. | .DistributionConfig' > config-dist.jsonEdit file config-dist.json
},
"PriceClass": "PriceClass_All",
"Enabled": true, <-- edit dari true ke false
"ViewerCertificate": {Lalu update distribution config
1
aws cloudfront update-distribution --id E1GWV2BXHHEF8I --if-match E3RR0DNWCSDOEG --distribution-config file://config-dist.json
{
"ETag": "E3LF2TJFMW9XL4",
"Distribution": {
"Id": "E1GWV2BXHHEF8I",
"ARN": "arn:aws:cloudfront::478876543121:distribution/E1GWV2BXHHEF8I",
"Status": "InProgress",Delete distribution
[cloudshell-user@ip-10-6-29-96 ~]$ aws cloudfront delete-distribution --id E1GWV2BXHHEF8I --if-match E3LF2TJFMW9XL4

