cdn-setup

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

CDN Setup

CDN设置

Configure content delivery networks.
配置内容分发网络。

AWS CloudFront

AWS CloudFront

bash
aws cloudfront create-distribution --distribution-config '{
  "CallerReference": "my-distribution",
  "Origins": {
    "Quantity": 1,
    "Items": [{
      "Id": "myS3Origin",
      "DomainName": "mybucket.s3.amazonaws.com",
      "S3OriginConfig": {"OriginAccessIdentity": ""}
    }]
  },
  "DefaultCacheBehavior": {
    "TargetOriginId": "myS3Origin",
    "ViewerProtocolPolicy": "redirect-to-https",
    "CachePolicyId": "658327ea-f89d-4fab-a63d-7e88639e58f6"
  },
  "Enabled": true
}'
bash
aws cloudfront create-distribution --distribution-config '{
  "CallerReference": "my-distribution",
  "Origins": {
    "Quantity": 1,
    "Items": [{
      "Id": "myS3Origin",
      "DomainName": "mybucket.s3.amazonaws.com",
      "S3OriginConfig": {"OriginAccessIdentity": ""}
    }]
  },
  "DefaultCacheBehavior": {
    "TargetOriginId": "myS3Origin",
    "ViewerProtocolPolicy": "redirect-to-https",
    "CachePolicyId": "658327ea-f89d-4fab-a63d-7e88639e58f6"
  },
  "Enabled": true
}'

Cloudflare

Cloudflare

bash
undefined
bash
undefined

Via API

通过API

curl -X POST "https://api.cloudflare.com/client/v4/zones"
-H "Authorization: Bearer $TOKEN"
-d '{"name":"example.com","jump_start":true}'
undefined
curl -X POST "https://api.cloudflare.com/client/v4/zones"
-H "Authorization: Bearer $TOKEN"
-d '{"name":"example.com","jump_start":true}'
undefined

Cache Headers

缓存头

nginx
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
    expires 30d;
    add_header Cache-Control "public, immutable";
}
nginx
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
    expires 30d;
    add_header Cache-Control "public, immutable";
}

Best Practices

最佳实践

  • Set appropriate cache headers
  • Use cache invalidation sparingly
  • Implement cache warming
  • Monitor cache hit ratios
  • 设置合适的缓存头
  • 谨慎使用缓存失效
  • 实施缓存预热
  • 监控缓存命中率