【问题标题】:Deploy gzip content on Amazon S3在 Amazon S3 上部署 gzip 内容
【发布时间】:2013-09-06 22:55:17
【问题描述】:

我对 Amazon S3 使用 gzip 压缩。我压缩 HTML、JS、CSS 文件并保持图像不变。

我使用s3cmd同步所有内容:

s3cmd sync --cf-invalidate ./deploy s3://n12v.com

很遗憾,这并没有将Content-Encoding: gzip 设置为所有必要的文件。

我需要找到所有更新的 gzip 文件并为每个文件设置Content-Encoding: gzip。我能想到的最佳解决方案:

  • 通过在每个文件上运行 gzip --test filepath 来查找所有 gzip 压缩文件
  • s3cmd put --add-header='Content-Encoding: gzip' filepath s3://n12v.com/filepath,例如再次上传文件只是为了添加标题。

这是非常临时的解决方案,有没有更好的方法?

【问题讨论】:

    标签: deployment amazon-s3 gzip s3cmd


    【解决方案1】:

    我遇到了同样类型的问题,所以我写了s3tup。不幸的是,它没有提供像 s3cmd 的 cf-invalidate 标志这样的东西(还),但是它使得在 rsync 时进行配置变得更加容易。你会编写一个看起来像这样的配置文件。

    # config.yml
    ---
    bucket: n12v.com
    rsync: ./deploy
    key_config:
      - patterns: ['*.html', '*.css', '*.js']
        content_encoding: gzip
    

    然后像这样从命令行 rsync。

    $ s3tup config.yml --rsync_only
    

    它仍处于开发初期,但也许您会发现它很有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-08
      • 2014-10-07
      • 2012-04-25
      • 2011-10-05
      • 2010-12-16
      • 2011-06-29
      相关资源
      最近更新 更多