阿里云OSS增量上传脚本

aliyun-oss-sync

此脚本是用来发布我个人博客Poison而编写的,因为工作中常用语言为 Java ,而 Python 仅是副业,代码如有不当之处,敬请指出。

逻辑很简单,递归遍历本地目录,然后判断每个文件在 OSS 里是否存在,如果不存在则直接上传,如果存在则检查 Content-Md5 是否相等,如果不相等则表明该文件内容已经发生变化,则上传该文件, OSS 会自动覆盖同名文件。

值得注意的是检查 Content-Md5 的值是用的 HTTP 的 HEAD 方法,因为我们只需要 header 中的 Content-Md5 字段的值,所以并不需要使用 GET 方法拿到响应体,这样既加快了速度也节省了 OSS 流量。

关于 oss_public_domain 变量的值,你如果在同地域内网的 ECS 上使用该脚本,建议使用内网域名,速度快并且节省了流量费用,否则使用外网域名。

    原文作者:田爽Poison
    原文地址: https://www.jianshu.com/p/df23f73aa04e
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞