宝塔面板有一个插件,叫 AWS-S3,安装该插件后就可以把文件数据库等自动备份到 S3 存储,但遗憾的是该插件只支持亚马逊的官方的服务,无法自定义 Endpoint,因此无法使用第三方的兼容 S3 API 的廉价存储
插件没有提供修改 Endpoint 的功能,因此只能修改插件源码

修改:/www/server/panel/plugin/aws_s3/s3lib/client/aws_s3.py
中 97 行位置的 build_auth()

添加
endpoint_url="https://s3.domain.com",
def build_auth(self):
    config = client(
        's3',
        endpoint_url="https://s3.domain.com",
        aws_access_key_id=self.__secret_id,
        aws_secret_access_key=self.__secret_key,
        
    )

s3.domain.com 可以是任意 Endpoint

如果在插件中填写的 key 只有写入权限,那么 save 后可能出现图 1-1 报错,请设置任务后立即运行进行测试,如果储存桶确实有正确的文件,那么请忽略,为了安全建议不要添加其他权限
图 1-1

参考:
如何自定义宝塔亚马逊 S3 云存储插件的端点

本文作者 : 肥猪qwq 转载请注明出处

让我们陷入困境的不是无知,而是看似正确的谬误论断。