私は静的資産にAmazonのCloudfront CDNを使用しています。 CfrontはすべてのGET要求に対してEtagを発行します。私は特定のCache-Control情報ですべての資産をメタデータに設定しています。これは(わかっているように)Etagを余分にします。私はWebPageTest.orgで自分のサイトの負荷パフォーマンスをテストし、これらの不要なEtagsのために私を騙します。彼らが実際には不必要な場合、誰かが放出されることを抑制する方法を知っていますか?AWS CloudfrontでEtagヘッダーが発行されないようにすることはできますか?
答えて
アセットをダウンロードするノードに関係なく、Cloudfrontが一貫したEtagsを配信する場合は、問題を最小限に抑える必要があります。
2つの異なる場所からCloudfrontに解決すると、CNAMEが完全に異なるIPアドレスのセットに解決されたことが確認されました。最初のサーバーはAmazonのLAXデータセンター(lax1.cloudfront.net)で8つのIPアドレスのセットに解決され、2番目のサーバーはAmazonのSFOデータセンター(sfo4.cloudfront.net)で8つのIPアドレスに解決されました。
Cloudfrontディストリビューションでオブジェクトを選択し、各場所から "wget - server-response"を実行してから、結果を比較しました。私は、各データセンターごとに異なるIPアドレスからの応答を得るために、これを各データセンターに対して複数回行いました。
結果はEtagsが同じで、私が当てたデータセンターとそのデータセンターからどのIPアドレスが応答したのかという点で同じでした。
私はこのことができます以下のヘッダは、サーバ X-AMZ-ID-2 X-AMZ-要求-ID 年齢 X-AMZ-CF-Idが 経由
・ホープ間で異なるなかったことの通知をしました、
デビッド
[編集済み - 以下の良好な補正に基づいてETagに削除コメント]
これは真実ではありません.Webパフォーマンスは、EtagとLast-Modifiedヘッダーに関するバグを監視します。これは、Cache-Controlヘッダーの長さが最大である場合でも、サーバーへの不要なラウンドトリップが発生するためです。これらの往復の結果は、ステータスコード304になります。しかし、ここでの違いは300msと2ms(ブラウザのキャッシュ)であり、多くの静的アセットを使用すると累積する可能性があります(CSS 、js、画像)。 – Evgeny
あなたは、OriginのSerを使用している場合ver、および、ETagを元のサーバー上で無効にした場合、CloudFrontはそのヘッダーにETagを追加しません。自分のオリジンサーバーでETagを無効にして確認しました。
S3から直接CloudFrontを使用する場合、EtagとLast-Modifiedを抑制する方法はありますか? – saver
- 1. 応答で無効なETagヘッダーを無視するようにHttpClientを設定できますか?
- 2. JavascriptはHTTPレスポンスのETAG値をどのように表示できますか? ETAGをリクエストに含めることはできますか?
- 3. ETagヘッダーがPHPから送信されていません
- 4. SiteMinder HTTPヘッダーが改ざんされていないことをどのように信頼できますか?
- 5. スケジュールされた.exeをawsで実行することはできますか?
- 6. Fine Uploader S3:安全でないヘッダー "ETag"を取得することを拒否されました
- 7. Amazon Cloudfrontはファイルが直接ダウンロードされないようにしますか?
- 8. 行がないときにこれをどのように数えることができますか?
- 9. NamecheapとAWS Cloudfrontを使用してサブドメインを作成するにはどうすればよいですか?
- 10. 他のアプリが実行されないようにすることはできますか?
- 11. 私はCloudFrontがうまくいったのですか? labmdaは、S3、CloudFrontを
- 12. 関数が実行されているAWSラムダコンテナを一意に識別することはできますか?
- 13. AWS CloudfrontディストリビューションにAPIゲートウェイの配信が表示されない
- 14. S3とCloudFrontに保存されているオブジェクトのExpires:ヘッダーをリセットできますか?
- 15. これはSQLAhclemy/Pythonで行うことができますか?
- 16. これはcytoscape.jsで行うことができますか?
- 17. これはdocusignテンプレートで行うことができますか?
- 18. これはMicrosoft Accessで行うことができますか?
- 19. Doxygenが保護されたメンバーを出力できないようにすることはできますか?
- 20. Terraform - AWS - EBSボリュームが削除されないようにするにはどうすればよいですか?
- 21. ヘッダーがステータスバーと重ならないようにするにはどうすればよいですか?
- 22. これは1行で行うことができます
- 23. どのように私はあなたがこのようにそれを行うことができます
- 24. AWS Cloudfront Signed URLを作成後に無効化または取り消すことはできますか?
- 25. なぜ私はparamsでそれぞれ行うことができないのですか?この入力はJavaScriptで動的に生成されるよう
- 26. AWSラムダ内でコードが実行されないようにする
- 27. get_posts()またはWP_Queryに投稿コンテンツが返されないようにすることはできますか?
- 28. これは悪いようです。これはどのように行うべきですか? Asp.Net MVCとドロップダウン
- 29. sdk apiでaws cloudfront distributionレポート(csv)を入手できますか?
- 30. デプロイされたアプリが開発モードで実行されていないことを確認するにはどうすればよいですか?
これに関するアップデートはありますか? ETagは、Expiresとmax-ageが設定されていても、複数のget要求を強制します。 –