aws-cloudfront-cdn について
Amazon CloudFront をコンテンツ配信ネットワークとして設定するためのスキルです。ディストリビューション、キャッシュ、セキュリティ、配信例を扱います。
主な機能
- 01AWS CLI によるディストリビューション設定
- 02Terraform の設定ガイド
- 03キャッシュとカスタムヘッダーの設定
- 04HTTPS、WAF、オリジンの保護
活用シーン
- 01静的サイトやアセットの配信
- 02API と動的コンテンツの高速化
- 03動画や大容量ファイルの配信
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill aws-cloudfront-cdnインストール後、Claude Code で/aws-cloudfront-cdnを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/cloudfront-distribution-with-aws-cli.mdcustom-headers-and-security-configuration.mdterraform-cloudfront-configuration.mdscripts/validate-config.shtemplates/config-starter.yaml詳細
AWS CloudFront CDN
目次
概要
Amazon CloudFront は、高速でグローバルに分散されたコンテンツ配信ネットワーク(CDN)です。世界中のエッジロケーションでコンテンツをキャッシュすることで、レイテンシを低減し、パフォーマンスを向上させ、DDoS 保護による高可用性を実現します。
使用する場面
- 静的ウェブサイトのホスティングとアセット配信
- API の高速化と動的コンテンツ配信
- 動画やメディアのストリーミング
- モバイルアプリケーションのコンテンツ配信
- 大容量ファイルのダウンロード
- リアルタイムデータの配信
- オリジンの DDoS 保護
- オリジンの隔離とセキュリティ
クイックスタート
最小限の動作例:
# Create distribution for S3 origin
aws cloudfront create-distribution \
--distribution-config '{
"CallerReference": "myapp-'$(date +%s)'",
"Enabled": true,
"Comment": "My application distribution",
"Origins": {
"Quantity": 1,
"Items": [{
"Id": "myS3Origin",
"DomainName": "mybucket.s3.us-east-1.amazonaws.com",
"S3OriginConfig": {
"OriginAccessIdentity": "origin-access-identity/cloudfront/ABCDEFG1234567"
}
}]
},
"DefaultCacheBehavior": {
"AllowedMethods": {
"Quantity": 3,
"Items": ["GET", "HEAD", "OPTIONS"]
},
"ViewerProtocolPolicy": "redirect-to-https",
"TargetOriginId": "myS3Origin",
"ForwardedValues": {
"QueryString": false,
// ... (see reference guides for full implementation)
リファレンスガイド
詳細な実装については、references/ ディレクトリを参照してください。
| ガイド | 内容 |
|---|---|
| AWS CLI を使用した CloudFront ディストリビューション | AWS CLI を使用した CloudFront ディストリビューション |
| Terraform による CloudFront の設定 | Terraform による CloudFront の設定 |
| カスタムヘッダーとセキュリティの設定 | カスタムヘッダーとセキュリティの設定 |
ベストプラクティス
✅ 推奨事項
- S3 には Origin Access Identity(OAI)を使用します
- ビューアーには HTTPS のみを有効にします
- CloudFront でコンテンツを圧縮します
- 適切なキャッシュ TTL を設定します
- キャッシュの無効化は慎重に行います
- 保護のために WAF を有効にします
- CloudWatch メトリクスを監視します
- 冗長性を確保するために複数のオリジンを使用します
❌ 禁止事項
- S3 バケットをパブリックにしないでください
- 機密データをキャッシュしないでください
- 本番環境で HTTP を使用しないでください
- キャッシュヘッダーを無視しないでください
- 過剰な無効化を行わないでください
- WAF による保護を省略しないでください
コメント
Markdown 対応