对象存储Backblaze B2作为ShareX图床



标题: 对象存储Backblaze B2作为ShareX图床
作者: 梦幻之心星   sky-seeker@qq.com
标签: [对象存储,图床,Backblaze,ShareX,WinSCP,MiXplorer]
目录: [云服务]
日期: 2020-12-30
更新: 2021-01-13

背景说明

Backblaze和七牛云介绍

  • Backblaze B2 云存储与国内的七牛云的计费方式类似,只是不需要备案。
  • Backblaze B2 云存储与 Amazon S3 和 Microsoft Azure 运作方式相似,可以将数据存储在云中。
  • Backblaze B2 云存储的 Amazon S3 兼容API使其能够直接使用Amazon S3的API。
  • Cyber??duck和SmartFTP是集成Backblaze B2云存储的第三方Windows端软件,SmartFTP需付费。
  • Windows端的 ShareX 支持 Backblaze B2 云存储作为文件上传器,无需付费。
  • Windows端的 WinSCP 支持 Amazon S3 ,支持自定义主机名和生成的链接的域名,无需付费。
  • 安卓端的 MiXplorer 支持 Backblaze B2 云存储,无需付费。

Backblaze和七牛云对比

  • Backblaze B2 云存储和七牛云的前10GB的总存储空间是免费的。
    Backblaze价格
    七牛云的价格

操作说明

注册登录Backblaze

  1. 打开 Backblaze B2 云存储官网 ,进行注册登录,在右下角切换语言为 简体中文。
  2. 在 桶 中创建一个存储桶,存储桶的类型为 公众 ,记下 Endpoint。
    存储桶
  3. 在 App Keys 中添加一个应用程序密钥,记下 keyID 和 applicationKey。
    添加应用程序密钥
  4. 在 浏览档案 中上传一张图片,图片上传后点击文件名以打开图片详情,记下 友好URL。
    图片详情

配置Cloudflare

  1. 如果有个人域名,打开Cloudflare官网,登录后在右上角切换语言为简体中文
  2. 在DNS中添加以下记录
    类型    名称    内容
    CNAME   img    f000.backblazeb2.com
    CNAME   image  f000.backblazeb2.com
    
  3. 如果个人域名为sky-seek.tk,则在页面规则中添加以下规则
    1  https://img.sky-seek.tk/file/Pictrue-Bed/img/*
       缓存级别: 缓存所有
    
    2  https://img.sky-seek.tk/*
       转发 URL (状态代码: 301 - 永久重定向)URL:
       https://image.sky-seek.tk/file/Pictrue-Bed/img/$1
    

配置Windows端

WinSCP

配置WinSCP
  1. 下载安装 WinSCP。
  2. 点击 新建会话 以打开 登录 对话框。
  3. 文件协议选择 Amazon S3 ,主机名为桶的 Endpoint ,端口号保持默认的 443 , 访问密钥 ID 为应用程序密钥中的 keyID ,私密访问密钥为应用程序密钥中的 applicationKey。保存后登录。
    WinSCP会话登录
手动上传方式
  1. 点击 命令 > 静态自定义命令 > 自定义。
    打开编辑自定义命令对话框
  2. 点击 添加 以打开 编辑自定义命令 对话框。
    编辑自定义命令
  3. 描述填 生成HTTPS URL ,选择 本地命令 ,勾选 使用远端文件 和 将结果复制到剪贴板 ,自定义命令如下所示。其中,serverName的参数为复制的链接的域名,如果没有自己的域名,填入桶中图片的 友好URL 的域名及 file,即 f000.backblazeb2.com/file/为复制的链接的域名。
    powershell.exe -ExecutionPolicy Bypass -STA -NoProfile -File "C:\Program Files (x86)\WinSCP\Extensions\GenerateHttpUrl.WinSCPextension.ps1" -webRoot "" -https -rootPath "" -hostName "" -serverName "f000.backblazeb2.com/file" -path "!/" -pause !&
    
  4. 点击 视图 > 工具栏 > 自定义命令按钮 以显示 自定义命令按钮 工具栏。
    显示自定义命令
  5. 选中文件后点击 生成HTTPS URL 后,图片链接自动复制到剪切板。
    生成HTTPS URL
文件同步方式
  • WinSCP提供了2种同步远程和本地目录的方法,一种是使用同步进行手动同步,另一种是使用使远程目录保持最新进行自动同步,本文介绍手动同步。
  1. 点击 同步 以打开 同步对话框
    打开同步对话框
  2. 选择 本地目录 和 远程目录 ,在方向/目标目录中选择远程,在模式中选择同步文件,勾选同步选项下的 删除文件 和 预览修改 ,勾选比较标准 下的 修改时间 ,最后点击确定。
    配置同步选项
  3. 文件比较完成后会显示同步清单。使用复选框选择要应用的操作,可以通过单击状态栏的相应部分(在窗口底部)来选择某种类型的所有操作。确认实际要进行的更改后点击确定开始进行同步。
    确认同步清单

ShareX

  1. 下载安装 ShareX 。
  2. 点击 目标 > 目的地设置...。
    打开目的地设置
  3. 点击 Backblaze B2 ,应用程序密钥 ID 为应用程序密钥中的 keyID ,应用程序密钥(私密)为应用程序密钥中的 applicationKey ,填入存储桶名称和上传路径,如果没有自己的域名,不勾选 使用自定义URL 并留空。
    文件上传器Backblaze B2设置

配置安卓端

  1. 下载安装 MiXplorer。
  2. 点击 + > 存储器 ,下滑选择 BackblazeB。
    打开目的地设置
  3. 点击 保存 > 下个 。
  4. keyID 填应用程序密钥中的 keyID ,Application Key 填应用程序密钥中的 applicationKey ,点击 登录。
    打开目的地设置
  5. 登录后可以通过复制粘贴来上传下载文件。

注意事项

Backblaze

  • 对于每个应用程序应创建单独的应用程序密钥,不建议共用密钥。
  • 如果开启了CDN加速,需要在 桶 > 桶设定 中配置 桶信息 ;在 桶 > CORS规则 中配置跨源资源共享。 桶信息 为 {"cache-control":"max-age=43200"}。在 跨源资源共享 中选择 与所有HTTPS来源共享此存储桶中的所有内容 ,在 CORS规则应用于以下API 中勾选 都。
    配置桶信息
    配置CORS规则

Cloudflare

  • 如果没有个人域名,此项无法配置。如果没有CDN加速以及缩短链接的的需求,不需要配置此项。国内域名和CDN服务需要域名备案。
  • 如果需要申请国外域名,可参考

WinSCP

  • 自定义命令说明

    # @name         Generate &HTTP URL
    # @command      powershell.exe -ExecutionPolicy Bypass -STA -NoProfile ^
    #                   -File "%EXTENSION_PATH%" -webRoot "%WebRoot%" -rootPath "%RootPath%" ^
    #                   -hostName "%HostName%" -serverName "!@" -path "!/" %Https% %Pause% ^
    #                   %Clipboard% %Open% !&
    # @description  Generates HTTP URL of the selected file
    # @flag         RemoteFiles
    # @flag         ShowResultsInMsgBox
    # @version      5
    # @homepage     https://winscp.net/eng/docs/extension_generate_http_url
    # @require      WinSCP 5.12
    # @option       - -site group "URL"
    # @option         - -site label "These options are site-specific."
    # @option         WebRoot -site textbox "&Web root path:"
    # @option         Https -site checkbox "Use HTTP&S" "" "-https"
    # @option         RootPath -site textbox "&URL root path (optional):"
    # @option         HostName -site textbox "&Web server hostname override (optional):"
    # @option       - group "Options"
    # @option         Pause checkbox "Display URL" "-pause" "-pause"
    # @option         Clipboard checkbox "Copy URL to clipboard" "-clipboard" "-clipboard"
    # @option         Open checkbox "Open URL in web browser" "" "-open"
    # @optionspage  https://winscp.net/eng/docs/extension_generate_http_url#options
    

同步对话框选项说明

方向/目标目录
  1. 全部:本地和远程同时充当源目录和目标目录。本地目录和远程目录都被修改。
  2. 远程:将本地目录(源)中的更改应用于远程目录(目标)。仅修改远程目录。
  3. 本地:与远程相同,只是方向相反。将远程目录(源)所做的更改应用于本地目录(目标)。仅本地目录被修改。
模式
  1. 在同步文件模式下,源目录中比目标目录中新的文件和源目录中目标目录中不存在的文件将传输到目标目录。
  2. 在文件镜像模式下,源目录中的不同文件(较新和较旧)都将传输到目标目录。否则,该模式与同步文件模式相同。
  3. 在同步时间戳模式下,对于相同的文件,目标文件的时间戳将更新为与源文件的时间戳匹配。它不会进行文件任何传输,也不会删除任何内容。在全部模式下,它总是更新较旧的时间戳。该模式仅适用于SFTP协议。
同步选项
  1. 选中 删除文件 复选框将删除源目录中不存在的目标目录中的文件和子目录。在全部模式下,不存在于相反目录中的文件被视为新文件,因此它们会被传输(除非仅启用只针对现有文件),但绝不会删除。换句话说,在全部模式下,不会删除本地目录和远程目录中的任何文件。
  2. 选中 预览更改 复选框使WinSCP显示同步检查列表,可以进一步细化确认实际要进行的更改。
比较标准
  1. 选中 修改时间 时,两个文件的时间戳不同时,它们被认为是不同的。
  2. 选中 文件大小后,如果两个文件的大小不同,则认为它们是不同的。选择全部时该选项不可用。使用该选项时,应避免使用文本传输模式,因为它可能会更改文件大小。
  3. 同时选中两个选项时,修改时间具有更高的优先级。因此,在默认的同步文件同步模式下,如果源文件早于目标文件,则尽管大小不同,也不会将其视为已更新。
  4. 如果两个选项都未选中,则始终将现有文件视为相同。因此,只有新文件才被同步。
  5. 选择全部模式时,始终选中修改时间,而未选中文件大小。

MiXplorer

  • 建议仅用于上传图片。如果需要用于分享图片链接,需要手动进行替换。由于对于同一张图片, 友好URL 为 https://f000.backblazeb2.com/file/Pictrue-Bed/xxx.jpg ,在 MiXplorer 中的图片的 属性 下的 路径 为 https://www.backblaze.com/Pictrue-Bed/xxx.jpg 。因此,如果没有自己的域名,只需要将 www.backblaze.com 替换为 f000.backblazeb2.com/file 即可。

相关资料

  • 目录同步
  • 同步检查列表
  • 同步对话框的选项说明
  • 免费获取可自定义域名的10G高速外链图床(Backblaze B2 + Cloudflare CDN)
  • 使用Backblaze B2和Cloudflare Workers免费托管图像

版权声明:本文为「梦幻之心星」原创,依据 CC BY-NC-SA 4.0 许可证进行授权,转载请附上原文出处链接及本声明。


博客园地址:https://www.cnblogs.com/Sky-seeker

微信公众号:关注微信公众号,获取即时推送
微信名:梦幻之心星 微信号:Sky-seeker