nginx图形界面版
转载
前言
- 经常写Markdown或者博客的同学,一般都会用到图床。图床是什么呢?其实就是一个存储图片的网站,上传图片到图床后可以直接通过外链进行访问。
- 例如把本地一张
test.jpg
上传图床后,即可以用外链:https://www.xxx.com/cdn/test.jpg
,此链接可在浏览器直接访问test.jpg
了。 - github仓库容量限制在1G,单个文件不能超过100M,有50M的文件,就会警告,但是针对个人博客来说已经足够了,实在不够就在新建一个仓库即可。
jsDelivr CDN 介绍
- jsDelivr 是国外的一家优秀的公共 CDN 服务提供商,也是首个「打通中国大陆(网宿公司运营)与海外的免费 CDN 服务」,同时也为 npm、GitHub、WordPress 插件和具有特殊要求的其他几个项目的自定义终结点提供镜像。

- 从上图可以看出来,POP 点也是分布全球比较均匀的,而且works in China(能够在中国使用)!接下来开始介绍如何搭建 GitHub + jsDelivr + Nginx 自定义域名的免费图床,速度杠杠的。
Github配置
- 首先需要先有Github账号(没有的话自己注册,此处不在讲解)。
- 创建Github资料库
- 进入github个人首页点击New




- 在点击Personal access tokens-在点击Generate New token


- 创建完成后会生成Token,只会出现一次,记得保存备用。
Nginx反向代理配置
- ubuntu:
apt-get update && apt-get install nginx
- centos:
yum update && yum install nginx
- docker:
docker run -d --name nginx --net=host -d nginx
- 切换至nginx配置文件目录新建配置文件
cd /etc/nginx/conf.d/ && touch test.conf
将以下内容存储至test.conf
proxy_cache_path /tmp/cache levels=1:2 keys_zone=mycache:100m inactive=1d max_size=10g;
server {
# 端口和域名
listen 443 ssl;
server_name example.cn;
# cert文件
ssl_certificate cert.pem;
# key文件
ssl_certificate_key key.pem;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
# 图床映射,添加自己的图床地址即可
location ^~ /cdn/ {
proxy_pass https://cdn.jsdelivr.net/gh/github账号/图片仓库名/;
proxy_cache mycache;
expires 30d;
}
# 其他配置
client_max_body_size 2m;
client_header_buffer_size 128k;
client_body_buffer_size 1m;
proxy_buffer_size 32k;
proxy_buffers 64 32k;
proxy_busy_buffers_size 1m;
proxy_temp_file_write_size 512k;
}
# http 跳转到 https
server {
listen 80;
server_name example.cn;
rewrite ^(.*) https://www.$server_name$1 permanent;
}
- service nginx restart
- docker restart nginx
PicGo上传图片工具下载配置
- github下载地址:
https://github.com/Molunerfinn/PicGo/releases
- 加速下载地址:将
https://github.com
替换为 https://github.91chifun.workers.dev/https://github.com/
即可 - 加速下载示例:
https://github.91chifun.workers.dev/https://github.com//Molunerfinn/PicGo/releases/download/v2.3.0/PicGo-Setup-2.3.0-x64.exe

- 设定仓库名:github账号/图片仓库名
- 设定分支名:master
- 设定Token:填写刚才我们生成的 Token
- 指定存储路径:如果需要指定子目录可以填写例如 img/,不填及上传至仓库根目录
- 设定自定义域名:填写 jsDelivr 的域名,即图片访问地址,不包括图片路径的前半部分,
https://cdn.jsdelivr.net/gh/github账号/图片仓库名@master
,如用nginx配置反向代理,也可用自己的域名https://example.cn/cdn/
。 - 最后设为默认图床,下次在 typora 上传图片就会自动上传到 github 图床了。
- 配置好之后,就可以切换到 “上传区” 选择 “图片上传 - GitHub图床” 后就可以上传图片了,支持拖拽、点击、剪贴板上传,上传后,图片链接直接复制的你的剪贴板中。

本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。