圧縮されたgzipヘッダーで配信される特定の静的ファイル(html、css、およびjavascriptファイル)を配信するようにAmazon S3またはCloudfrontに指示することは可能ですか?.gzファイルがサーバー上にある場合でも?
3 に答える
これを行う唯一の方法は、ファイルをローカルで圧縮し、S3にアップロードしてContent-Encoding: gzip
、ファイルのヘッダーを設定することです。これは機能しますが、問題は、エンコードされたデータを受け入れないクライアントの場合、ファイルの圧縮データを解析して読み取ることです。
これで、オリジンサーバーから圧縮ファイルと非圧縮ファイルの両方を提供できるAmazonCloudFrontを使用できます。
Amazonドキュメントから:
CloudFrontはファイル自体を圧縮しません。代わりに、オリジンからの圧縮ファイルの受信に依存しています。圧縮ファイルを提供するプロセスは、カスタムオリジンを使用しているかAmazonS3を使用しているかによって異なります。
カスタムオリジン:CloudFrontは、圧縮ファイルを使用してリクエストに応答するためにオリジンサーバーに依存しています。詳細については、CloudFrontがカスタムオリジンから圧縮コンテンツを提供する方法を参照してください。
Amazon S3オリジン:Amazon S3はファイルを自動的に圧縮しないため、圧縮形式で提供するファイルの圧縮バージョンと非圧縮バージョンを別々に作成する必要があります。さらに、視聴者が圧縮されたコンテンツを要求したときにURLを書き換えるためのWebアプリケーションを開発します。詳細については、「AmazonS3からの圧縮ファイルの提供」を参照してください。
これは、 DragonDisk S3(フリーウェア)、バケットエクスプローラー、Cloudberryなどのツールを使用して実行できます。