gpt4 book ai didi

amazon-web-services - 静态 Amazon S3 文件的 GZIP 压缩

转载 作者:行者123 更新时间:2023-12-04 13:31:38 32 4
gpt4 key购买 nike

我要实现 zip 在我的网站上进行压缩。我已经在 上实现了它IIS HTML页面压缩成功正如预期的那样。

现在的问题是 CSS 和 JS 文件,我从 获得亚马逊 S3 .它们根本没有被压缩。我也想压缩它们。

请指导我如何做到这一点。分享它的链接对我有很大帮助。

更新:我在 S3 文件中添加了 Meta Header 作为“Content-Encoding:gzip”,现在它显示在响应头中。文件大小仍然相同,页面中的特定 CSS 无效 .而且我什至无法在浏览器中打开它。这是特定 css 的 [link][1]。

谢谢

最佳答案

如果您在 S3 存储桶前使用 CloudFront,则无需手动压缩 HTML 资源(CloudFront 将即时压缩它们)。请注意 CloudFront 仅压缩 gzip(无 deflate、brotli)和仅 CSS/JS/HTML(基于内容类型)。见 https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html#compressed-content-cloudfront-file-types .要使其正常工作,您必须将一些 http header 从 CloudFront 转发到 S3(请参阅 doc)。

如果您的 S3 存储桶有 Cloudfront 不支持的资源(通用“二进制/八位字节流”mime 类型,如“hdr”纹理或“nds”ROM),您需要在上传到 S3 之前自行压缩它们,然后设置“内容编码”资源上的 http 元数据。请注意,只有支持 gz 编码的浏览器才能下载和解压缩文件。

如果您不想手动逐个压缩文件,可以使用 Lambda 函数

  • 在存储桶中的对象(文件)的每个 PUT 上触发
  • 如果文件尚未压缩并且压缩有用,则将原始上传的文件替换为压缩版本
  • 将 http header 内容编码设置为 gzip

  • 我为此写了一个 GIST,它可以激发您创建自己的流程。见 https://gist.github.com/psa-jforestier/1c74330df8e0d1fd6028e75e210e5042

    并且不要忘记使 (=purge) Cloudfront 无效以应用您的更改。

    关于amazon-web-services - 静态 Amazon S3 文件的 GZIP 压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31801661/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com