如何搭建自己的图床

前言

简单来说,图床是一种在线服务,允许用户上传、存储和分享图片。当把图片上传到该服务器上后,便能在互联网上通过链接来使用该图片,尤其是在不允许直接上传图片文件的平台上,也有些平台不允许上传其他平台的图片文件。

为什么需要图床?

写过文章的都知道,一般平台都是支持直接把图片复制粘贴的,然后图片就存进了这个平台的图床,比如你在掘金写作时,图片地址都是 https://p9-juejin.byteimg.com 的,而当你想把图片发布到其他网站时则图片无法展示,所以需要有一个自己的图床来存储远程的图片,方便一篇博客多个平台发布。

图床的优势

  1. 减轻服务器压力:当把图片放在图床服务器上时,比如阿里云 OSS,腾讯云 COS,七牛云等,访问这些图片文件不用请求数据服务器,也就加速了图片以及数据的展示。
  2. 加速访问:图片可以通过 CDN 就近访问,图片显示数据加快。
  3. 方便写文章:可以快速引用图片,使用起来方便快捷。

如何搭建自己的图床?

图床软件有很多比如 PicGo、iPic、uPic 等,这里我拿 PicGo 来举例,其他都大差不差。
首先你需要去 PicGo 网站去下载并安装软件,如下图。

你可以看到图床设置支持阿里云 OSS,腾讯云 COS,七牛云,GitHub 等,

  1. 用阿里云 OSS 存储配置
    去到阿里云 OSS 存储进行一些配置(需要先开通),比如创建自己的 bucket,存储区域比如 oss-cn-beijing 等区域,同时去用户信息管理中拿到 accessKeyId, accessKeySecret 等信息。

    然后将其填入到阿里云 OSS 配置中就完成了。
  2. 使用 GitHub 配置
  • 在 GitHub Developer Settings 中生成一个 token(classic 类型),如下图,记得把 repo 钩上。这里过期时间可以自己设置长一点,省的经常来修改。
  • 其次在 GitHub New 创建一个 repo 用于存放图片,随意命名都行,记得设置为 public(因为 token 只能访问 public repo)
  • 将 token 和 repo 信息写入到 GitHub 配置中就好了,参考下面的图片进行配置。

如何使用

打开 PicGo, 在上传区你可以看到如下图片(确认上面选择是 GitHub),你可以选择拖拽上传或者快捷上传图片。推荐使用快捷键上传,当你在写文章的时候快捷键上传就直接上传成功了。

如何查看

可以在相册中查看你上传的图片,然后点击图片可以复制其地址。比如这个。

结尾

其实搭建自己的 GitHub 图床并没有什么难处,而且也不需要花费💰,有一个自己的图床可以非常方便的写文章,希望你能坚持写作,不管是技术还是 life,在路上就别停。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/266972.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Web】青少年CTF擂台挑战赛 2024 #Round 1 wp

好家伙,比赛结束了还有一道0解web题是吧( 随缘写点wp(简单过头,看个乐就好) 目录 EasyMD5 PHP的后门 PHP的XXE Easy_SQLi 雏形系统 EasyMD5 进来是个文件上传界面 说是只能上传pdf,那就改Content-Type为application/pdf,改…

【Django】执行查询—跨关系查询中的跨多值关联问题

跨多值查询 跨越 ManyToManyField 或反查 ForeignKey (例如从 Blog 到 Entry )时,对多个属性进行过滤会产生这样的问题:是否要求每个属性都在同一个相关对象中重合。 filter() 先看filter(),通过一个例子看&#xf…

Java 学习和实践笔记(26):组合(component)的含义以及与继承(extends)的关系

组合的两个作用: 1)通过将父类对象作为子类的属性 2)通过第1点的作用,实现了代码复用。 示例代码: public class TestComponent {public static void main(String[] args) {Student2 s1 new Student2("jason&…

MySQL 存储过程批量插入总结

功能需求背景:今天接到产品经理核心业务表的数据压测功能,让我向核心业务表插入百万级的业务量数据,我首先想到的办法就是存储过程实现数据的批量 。 由于无法提供核心业务表,本文仅仅提供我刚刚自己创建的表bds_base_user 表做相…

缓存穿透解决方案之布隆过滤器

布隆过滤器可以快速判断数据是否存在,避免从数据库中查询数据是否存在,减轻数据库的压力 布隆过滤器是由一个初值为0的bit数组和N个哈希函数,可以用来快速的判断某个数据是否存在 当我们想要标记某个数据是否存在时,布隆过滤器会…

FPGA之带有进位逻辑的加法运算

module ADDER( input [5:0]A, input [5:0]B,output[6:0]Q ); assign Q AB; endmodule 综合结果如下图所示: 使用了6个Lut,,6个LUT分布…

2023年全国职业院校技能大赛中职组大数据应用与服务赛项题库参考答案陆续更新中,敬请期待…

2023年全国职业院校技能大赛中职组大数据应用与服务赛项题库参考答案陆续更新中,敬请期待… 武汉唯众智创科技有限公司 2024 年 2 月 联系人:辜渝傧13037102709 题号:试题01 模块三:业务分析与可视化 (一&#xff0…

ONLYOFFICE 桌面编辑器 v8.0 更新内容详细攻略

文章目录 引言PDF 表单RTL 支持电子表格中的新增功能Moodle 集成用密码保护 PDF 文件从“开始”菜单快速创建文档本地界面主题下载安装桌面编辑工具总结 引言 官网链接: ONLYOFFICE 官方网址 ONLYOFFICE 桌面编辑器是一款免费的文档处理软件,适用于 Li…

ETL数据仓库的使用方式

一、ETL的过程 在 ETL 过程中,数据从源系统中抽取(Extract),经过各种转换(Transform)操作,最后加载(Load)到目标数据仓库中。以下是 ETL 数仓流程的基本步骤&#xff1a…

SLAM运动模型

经典的SLAM模型是由一个运动方程和一个观测方程构成的,如下图所示: 其中:x_k为机器人的状态,z为机器人的观测数据,u_k为控制数据,y_j观测点,w和v分别为运动噪声和观测噪声。f为运动方程&#xf…

【教程】移动互联网时代的APP上架流程和要点

目录 摘要 引言 正文 一、应用商店注册 二、准备APP材料 三、打包上传App 摘要 本文将介绍移动应用程序上架的基本流程和要点,包括应用商店注册、APP材料准备、打包上传App、APP审核以及发布APP的详细步骤。此外,还会提到利用appuploder工具简化i…

14:00面试,14:07就出来了,问的问题过于变态了。。。

我从一家小公司转投到另一家公司,期待着新的工作环境和机会。然而,新公司的加班文化让我有些始料未及。虽然薪资相对较高,但长时间的工作和缺乏休息使我身心俱疲。 就在我逐渐适应这种高强度的工作节奏时,公司突然宣布了一则令人…

Python实现链表:从基础到应用

一、引言 链表是一种常见的数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的指针。链表在内存中的存储不是连续的,这使得它在插入和删除操作上具有较高的效率。本文将使用Python语言来实现一个简单的链表,并展示其…

kubectl 陈述式资源管理方法

陈述式资源管理方法 kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口 kubectl 是官方的CLI命令行工具,用于与 apiserver 进行通信,将用户在命令行输入的命令,组织并转化为 apiserver 能识别的信息,…

又挖到宝了!国人团队研发的AI视频工具PixVerse,这么好用居然还完全免费!(强烈推荐)

昨天发了一款国产免费的 AI 绘画工具 Dreamina 的介绍: 居然才发现!字节跳动旗下国产AI绘画工具Dreamina,这么好用居然还免费!(强烈推荐) 发现大家对国产 AI 工具还挺感兴趣的。今天继续帮大家挖国产的 A…

项目-SERVER模块-Buffer模块

Buffer模块 一、Buffer模块是什么?实现思想是什么?二、代码实现如何设计:1.成员变量:2.构造函数:3.获取地址和空间大小4.读写偏移向后移动5.扩容函数6.写入函数7.读取函数8.获取地址和空间大小9.获取地址和空间大小10.…

python中版本,操作系统等问题汇总

1. linux源码部署到windows 1.1ModuleNotFoundError: No module named pwd 这个问题&#xff0c;是因为源码是给linux的。这里在windows中&#xff0c;没有该命令。 解决方法之一&#xff0c;在相应的环境目录中&#xff0c;如图中<MetaGPTenv>虚拟环境中&#xff0c;在…

Linux信号【产生-保存-处理】

目录 前言&#xff1a; 1、进程信号基本概念 1.1、什么是信号&#xff1f; 1.2、信号的作用 2、键盘键入 2.1、ctrlc 终止前台进程 2.1.1、signal 注册执行动作 3、系统调用 3.1、kill 函数 3.2、模拟实现 myKill 3.3、raise 函数 3.4、abort 函数 4、软件条件信号…

消息队列+更新DB极易引发的DB并发修改bug

背景 我们在生产系统中和其他系统进行交互时一般都会通过消息队列来解耦生产者和消费者&#xff0c;然后通过每个使用方消费消息队列的消息的方式来完成消息的消费&#xff0c;并且一般来说我们消费消息后极有可能会操作DB&#xff0c;不过这种方式如果处理不够仔细&#xff0…

【C++从0到王者】第四十六站:图的深度优先与广度优先

文章目录 一、图的遍历二、广度优先遍历1.思想2.算法实现3.六度好友 三、深度优先遍历1.思想2.代码实现 四、其他问题 一、图的遍历 对于图而言&#xff0c;我们的遍历一般是遍历顶点&#xff0c;而不是边&#xff0c;因为边的遍历是比较简单的&#xff0c;就是邻接矩阵或者邻接…