通过Typora + PicGo + 阿里云对象存储(OSS)实现图床

文章目录

  • [通过Typora + PicGo + 阿里云对象存储(OSS)实现图床](#通过Typora + PicGo + 阿里云对象存储(OSS)实现图床)
    • [1 准备工作](#1 准备工作)
    • [2 使用流程](#2 使用流程)
    • [3 常见问题和解决](#3 常见问题和解决)
      • [3.1 创建asesskey](#3.1 创建asesskey)
      • [3.2 You have no right to access this object because of bucket acl](#3.2 You have no right to access this object because of bucket acl)
      • 可能原因:
      • 解决方法:
    • [4 优化](#4 优化)
      • [4.1. 优化 OSS 配置](#4.1. 优化 OSS 配置)
        • [1 开启 OSS 的 CDN 加速](#1 开启 OSS 的 CDN 加速)
        • [2 设置 OSS 的权限](#2 设置 OSS 的权限)
        • [3 定期清理 OSS 图片](#3 定期清理 OSS 图片)
      • [4.2 安全优化](#4.2 安全优化)
        • [1 使用子用户 AccessKey](#1 使用子用户 AccessKey)
        • [2 定期更换 AccessKey](#2 定期更换 AccessKey)
        • [3 开启 OSS 的日志功能](#3 开启 OSS 的日志功能)
    • [5. 其他优化建议](#5. 其他优化建议)

通过Typora + PicGo + 阿里云对象存储(OSS)实现图床

在 Typora 中使用 OSS (对象存储服务)作为图床,可以实现图片的自动上传和存储,方便在 Markdown 文档中插入图片。

  • Typora :下载并安装 Typora 编辑器,它是一款支持 Markdown 编辑的工具。

  • PicGo :下载并安装 PicGo 软件,它是一个用于管理图床的工具。

  • 对象存储(OSS):一种云存储服务,用于存储非结构化数据(如图片、视频、文档等),常见的云服务提供商如阿里云、腾讯云、华为云等都提供 OSS 服务。

1 准备工作

1.1 阿里云对象存储 OSS配置

创建oss存储空间bucket

开通阿里云对象存储功能

登录阿里云 OSS 控制台,点击"创建存储空间"。

在弹出的对话框中,填写存储空间名称(需全局唯一)、地域(建议选择离自己近的地域以提高访问速度)、读写权限(选择"公共读",这样图片才能被外部访问)等信息,然后点击"确定"。

关闭阻止公共访问,默认情况是打开状态,上一步骤创建完成,点击进入对应的bucket,左侧栏目看到权限控制-》阻止公共访问,操作之后如下图。

设置图片读写权限,点击读写权限标签栏,设置公共读。

获取AccessKey

用户名密码登陆阿里云

主界面右侧,鼠标点击看到AccessKey这一项,点击如图

创建Accesskey和子用户Accesskey,在弹出的安全验证窗口中,选择一个方式来通过安全验证

创建Accesskey完成后会下载一个csv文件,里面有AccessKey ID 和 AccessKey Secret ,一定要保存好,不要泄露。

1.2 PicGo配置

下载:https://molunerfinn.com/PicGo/

安装:下载exe文件,双击,下一步,安装

配置

打开PicGo软件,配置阿里云OOS,AccessKeyId,AccessKeySecret,Bucket,存储区域

上面生成的AccessKey填写再设定KeyId,KeySecret

bucket名称在这里

设定存储区域 oss-cn-beijing

1.3 Typora配置

下载 https://www.onlinedown.net/soft/10047520.html

安装 点击下一步

配置 PicGo

2 使用流程

2.1 截图到剪切板

2.2 复制到md文档

3 常见问题和解决

3.1 创建asesskey

  1. 登录阿里云控制台:打开阿里云官网(https://www.aliyun.com/),使用你的账号登录阿里云控制台。

  2. 进入 Access Key 管理页面:登录后,将鼠标悬停在页面右上角的账号名称上,在下拉菜单中选择"AccessKey 管理"。

  3. 创建 Access Key

    :

    • 如果你是第一次创建 Access Key,可以直接点击"创建 Access Key"按钮。
    • 若之前创建过,需要按照系统提示进行身份验证(如短信验证码验证),验证通过后才能创建新的 Access Key。
  4. 保存 Access Key 信息 :创建成功后,系统会弹出一个窗口显示 AccessKey ID 和 AccessKey Secret,请务必将这些信息妥善保存,因为 AccessKey Secret 只会显示一次,一旦关闭窗口就无法再次查看,若不慎丢失,只能重新创建。

3.2 You have no right to access this object because of bucket acl

根据错误信息提示"You have no right to access this object because of bucket acl",这表明您尝试访问的对象由于存储桶(Bucket)的访问控制列表(ACL)配置,导致您没有权限访问该对象。以下是可能的原因和解决方法

可能原因:

  1. 存储桶的ACL权限限制
    存储桶的所有者可能设置了严格的ACL权限,仅允许特定用户或账户访问。
  2. 对象权限未正确配置
    即使存储桶的ACL允许访问,对象本身的权限可能被设置为私有,导致您无法访问。
  3. IAM权限不足
    如果您使用的是云服务(如AWS S3、阿里云OSS等),您的IAM角色或用户可能没有足够的权限访问该存储桶或对象。
  4. 跨域访问限制
    如果您通过网页或其他跨域方式访问,存储桶可能未配置正确的CORS(跨域资源共享)策略。

解决方法:

  1. 检查存储桶的ACL设置
    • 登录到云服务控制台(如AWS S3、阿里云OSS等)。
    • 找到目标存储桶,检查其ACL设置,确保您的账户或用户组有访问权限。
    • 如果存储桶是私有的,可以尝试将其设置为公开读取(public-read),或者添加您的账户到允许访问列表中。
  2. 检查对象的权限
    • 确保目标对象的权限设置为允许访问。
    • 如果是私有对象,您需要获取对象的签名URL或临时访问令牌。
  3. 检查IAM权限
    • 如果您使用的是IAM角色或用户,确保其策略中包含访问该存储桶和对象的权限。例如,在AWS S3中,策略需要包含s3:GetObject和s3:ListBucket权限。
  4. 配置CORS策略(如果需要)
    • 如果通过网页访问,确保存储桶的CORS策略允许您的域名访问。
  5. 联系存储桶所有者
    • 如果您无法修改存储桶或对象的权限,请联系存储桶的所有者,请求其授予您访问权限。

4 优化

4.1. 优化 OSS 配置

通过优化 OSS 的设置,可以提高图片访问速度和安全性。

1 开启 OSS 的 CDN 加速
  1. 进入阿里云 OSS 控制台,选择你的 Bucket。
  2. 在"域名管理"中,绑定自定义域名,并开启 CDN 加速。
  3. 在 PicGo 中,将"自定义域名"设置为 CDN 加速的域名。
2 设置 OSS 的权限
  1. 在 OSS 控制台中,进入 Bucket 的"权限管理"。
  2. 将 Bucket 的读写权限设置为 私有,避免图片被恶意访问。
  3. 在 PicGo 中,确保使用 AccessKey 上传图片。
3 定期清理 OSS 图片
  1. 在 OSS 控制台中,使用"生命周期管理"功能,设置自动删除过期图片。
  2. 定期手动清理不再使用的图片,节省存储空间。

4.2 安全优化

1 使用子用户 AccessKey
  • 在阿里云 RAM 控制台中,创建一个子用户,并授予该用户 OSS 的读写权限。
  • 使用子用户的 AccessKey 配置 PicGo,避免使用主账号的 AccessKey。
2 定期更换 AccessKey
  • 定期更换 AccessKey,避免因泄露导致的安全问题。
  • 更换 AccessKey 后,记得更新 PicGo 中的配置。
3 开启 OSS 的日志功能
  • 在 OSS 控制台中,开启日志功能,记录所有访问和操作日志,方便排查问题。

5. 其他优化建议

  • 使用 Markdown 图片语法:在 Typora 中,使用 语法插入图片,确保图片链接可移植。
  • 备份 OSS 图片:定期将 OSS 中的图片备份到本地或其他存储服务,防止数据丢失。
  • 优化图片大小:在上传前,使用工具压缩图片,减少存储空间和加载时间。
相关推荐
whyutianict_vv1 小时前
云计算 HCIE 认证体系解析:HCIA/HCIP/HCIE 三级科目与知识边界
linux·运维·云计算
知已难寻9 小时前
第 2 篇 · 云的地基:服务器、存储、网络三大基础设施
运维·服务器·网络·云原生·云计算·负载均衡·1024程序员节
Lvan的前端笔记17 小时前
阿里云CDN
阿里云·云计算
小豆庄18 小时前
AI换脸能骗过检测,视频脱敏为什么该回到本地
人工智能·yolo·阿里云·ai·ocr·视频
李兆龙的博客1 天前
从一到无穷大 #105:OpenAI Habitat II——多租户演进、全球读取优化与 CDC 平台
云计算·存储
云卷云舒___________1 天前
Qwen4-27B!现身英特尔仓库,Gemini 4 Carbon 3D 工程封神 | 10月25日 AI日报
阿里云·ai日报·qwen4·opus55·gemini4carbon·qwen427b·kalmia
yyuuuzz1 天前
跨境站点日志时区混乱的排查记录
运维·服务器·网络·云计算·aws·1024程序员节
Maynor9963 天前
免费 Cloudflare 只有 10 个 D1?满了之后的「穷鬼打法」:表前缀复用同一个库
数据库·后端·云计算·cloudflare
A-刘晨阳3 天前
【云原生】nerdctl 部署及使用指南
运维·docker·kubernetes·云计算·1024程序员节·nerdctl
我是高手高手高高手4 天前
安装宝塔,阿里云(有系统和数据两个盘)
阿里云·云计算