在「gzip support for Amazon Web Services CloudFront」這篇提到了要如何用 CloudFront 的 Custom Origin 實做標準 deflate/gzip。
之前 CloudFront 就有支援 Vary
header,雖然只支援 Accept-Encoding
,但這就是我們要的:(Appendix: Custom Origins)
The only acceptable value for the Vary header is Accept-Encoding.
本來 S3 沒有能力依據 Accept-Encoding
送出不同的結果,這次有了 Custom Origin 出來以後掛個有能力 gzip-on-the-fly 的 Web Server 就可以做到了,檔案也不一定要放到 S3 上 (可以放 EBS)。
基本上這個功能可以用現有的外部機器做 (因為 CloudFront 連到 Origin 的量應該不大),或是 EC2 的 micro instance 應該也夠用了...