2017-11-03 5 views
0

S3バケットの画像にcdnとしてCloudfrontを使用しているステージングサーバーにRailsアプリケーションがあります。バケット内の画像はすべてjpeg(gzippedではありません)です。バケツからイメージを直接ロードすると、レスポンスヘッダーでコンテンツタイプがimage/svg+xmlに設定されていることがわかります。圧縮していないにもかかわらずクラウドフロントGzippingファイル

CloudFrontの分布が単一の挙動と圧縮がオフになっています

圧縮は自動的にオブジェクト:オフ

は、しかし、サイト上のローディング画像の場合には問題があります。

要求された画像は、以下である場合に応答ヘッダー(太字関連ヘッダ)と、リクエストが成功した1MB:

accept-ranges:bytes 
age:12058 
cache-control:max-age=29030400 
content-length:22749 
content-type:image/jpeg 
date:Fri, 03 Nov 2017 07:35:39 GMT 
etag:"5391a06cfff89879e57da305a21e3e4c" 
last-modified:Tue, 29 Nov 2016 11:14:53 GMT 
server:AmazonS3 
status:200 
via:1.1 1b61c3f085e80ef7e1cd6e9ac0cdfa77.cloudfront.net (CloudFront) 
x-amz-cf-id:1-YfXx6B_px2YlEK7b96chYcC2AfZ_QMd42NpcilQcXhr63gpJ4_uQ== 
x-cache:Hit from cloudfront 

が要求された画像は、要求が成功し、1メガバイトを超えているが、画像ISN場合表示されません。ヘッダーは、応答エンコーディングがgzipであることを示しています。

age:12712 
**content-encoding:gzip** 
**content-type:text/html; charset=utf-8** 
date:Fri, 03 Nov 2017 07:12:08 GMT 
server:Cowboy 
status:200 OK 
status:200 
vary:Accept-Encoding 
via:1.1 vegur, 1.1 adc13b6ff82fd04caa2efba65479257c.cloudfront.net (CloudFront) 
x-amz-cf-id:_CLNU7iKqnFF1kTNFRJVfrv4iTh8nzol1smRg73p8zESaZo96NZ2gA== 
x-cache:Hit from cloudfront 
x-content-type-options:nosniff 
x-frame-options:SAMEORIGIN 
x-request-id:eac71856-51b8-4b11-80eb-95e2b4c5bb37 
x-runtime:0.022798 
x-xss-protection:1; mode=block 

なぜクラウドフロントはイメージをgzipしていますか、gzippedイメージが画面に表示されないのはなぜですか?私が理解している限り、画像をgzippingするポイントはありませんが、レンダリングする必要があります。

+0

この例では、S3とCowboyという2つの全く異なるオリジナルサーバーが表示されています。 –

+0

@ Michael-sqlbot私はそれが雲前のフードの下にあるものだと思った。私は1つの起源しか設定していないので、カウボーイが何であるかは分かりません。それはエッジサーバーですか? – Undistraction

+0

いいえ、そうではありません。カウボーイはAWSで使用されていないWebサーバーで、「Via:vegur」はこの応答が実際にHerokuで行っていたものであった可能性があることを示しています。 https://superuser.com/a/857239/183147 –

答えて

0

私は配布を無効にし、ファイルは正しくgzipされず、正しく表示されました。

画像が表示されない理由がわかりません。

関連する問題