GitHub + PicUloader + jsDelivr : 通过 web 上传的免费图床和图像访问 CDN 加速
原文 https://refrain.cn/blog/1/post/github-piculoader-jsdelivr-web-cdn-49
GitHub 介绍
GitHub 是一个用于版本控制和协作的代码托管平台。它让你和其他人在任何地方在同一项目上一起工作。任何人都可以免费使用并建立一个上传图像的存储库作为专用的免费图床。
jsDelivr 介绍
jsDelivr 是免费、快速、开源、可靠的开源 CDN,支持 NPM、GitHub、WordPress,以及为 GitHub 的图像存储库提供 CDN 访问提速
PicUploader 介绍
PicUploader 是一个用 php 编写的图床工具,它能帮助你快速上传你的图片到 GitHub 图像存储库,并自动返回 Markdown 格式链接到剪贴板。相比于 PicGo 的优势是支持部署在云服务器,便于随处访问。缺点是目前还没有登录功能,但是可以通过配置 HTTP 基本身份验证防止别人随意访问页面。
创建 GitHub 图像存储库,即图床
首先你得有一个 GitHub 账号
新建一个仓库
记下你取的仓库名。
生成一个 token 用于 PicUploader 操作你的仓库:
访问:https://github.com/settings/tokens
然后点击 Generate new token。
把 repo 的勾打上即可。然后翻到页面最底部,点击 Generate token 的绿色按钮生成 token。
**注意:**这个 token 生成后只会显示一次!你要把这个 token 复制一下存到其他地方以备以后要用。
部署 PicUploader 在宝塔 LNMP 环境
使用宝塔一键脚本并安装 Nginx 和 PHP7.3 即可
PicUploader 默认使用 Sqlite 数据库
在宝塔面板中新建网站并绑定域名 img.yourdomain.com
在站点修改的配置文件或者伪静态设置中加入以下设置
特别注意由于网页的首页文件并非 index.php 而是 dashboard.php 因此在 location 设置为 index dashboard.php
client_header_timeout 60s;
client_body_timeout 60s;
send_timeout 60s;
keepalive_timeout 65s;
location / {index dashboard.php;try_files $uri $uri/ index.php$is_args$args;
}
配置 PicUploader 和 jsDelivr CDN 加速
配置 GitHub 参数
在 domain 中设置 https://cdn.jsdelivr.net/gh/USERNAME/REPOSITORY 即可使用 jsDeliver 加速上传的图像。
配置 PicUploader 通用设置
由于我这里仅使用 GitHub 所有,未勾选其他云存储,其他功能如图片压缩、文件名配置、数据库配置、水印等根据使用场景调整。
使用效果(工作流)
如图所示,可以使用 Snipaste 等截图软件,截图后手动打码,完成将自动保存到剪贴板,回到 PicUploader 的页面中 ctrl + v 粘贴即可完成上传并返回 jsDelivr 的图像链接。
如果不小心离开了 PicUploader 页面,可以在上传历史中重新查看图像、原始 url、markdown 等。
配置 Nginx HTTP 身份验证
如上一章节所示,PicUploader 暂时没有登录功能,任何都都可以访问你的页面,因此在前面的宝塔站点配置中加入以下两行即可开启 nginx 密码验证
auth_basic 'Restricted'; # 认证名称,随意填写
auth_basic_user_file /usr/local/nginx/htpasswd; # 认证的密码文件,需要生成。
效果如图
GitHub + PicUloader + jsDelivr : 通过 web 上传的免费图床和图像访问 CDN 加速相关推荐
- 微博图床php上传,使用新浪微博图床
首先感谢新浪微博提供的免费图床(对外链无限制),以及吊炸天的cdn图片加速服务,从此妈妈再也不用担心我的图床不能用了. 图床原理: 访问http://weibo.com/minipublish 使用新 ...
- Markdown: Typora_图片上传工具: Ipic_图床: 七牛整合
软件配置 Ipic Typora 七牛 这个空间应该设为 public, 否则上传成功, 无法加载(使用) 使用 全文选择, 复制 markDown 即可
- PicGo+github搭建免费图床
PicGo+github搭建免费图床 使用Github(需要一个GitHub账号)和PicGO来搭建一个免费图床,为了避免自己的博客迁移或者转发给别人而无法显示图片,造成阅读障碍. 图床是什么 图床一 ...
- html web上传文件原理,Web上传文件的原理及实现
本文为原创,如需转载,请注明作者和出处,谢谢! 现在有很多Web程序都有上传功能,实现上传功能的组件或框架也很多,如基于java的Commons FileUpload.还有Struts1.x和Stru ...
- EasyExcel web上传下载功能实现
目录 1.依赖引入和poi版本对应关系 2.web下载 2.1.实体对象注解方式 2.1.1.实体对象 2.1.2.接口代码 2.2.非实体对象注解方式 3.web上传 3.1.实体对象方式 3.1. ...
- linux安装git并配置GitHub账号,本地与GitHub之间进行文件的上传(push)、下载(克隆)、更新
0310 Linux和github交互 参考链接: 安装git并配置GitHub账号: 本地与GitHub之间进行文件的上传(push).下载(克隆).更新 上传 下载 更新: 补充:GitHub的原 ...
- web上传文件到ftp服务器,web 上传文件到ftp服务器上
web 上传文件到ftp服务器上 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器.例如QQ.exe.在本地主机和Windows云服务器上分 ...
- php文件 用户头像上传代码,网页web上传用户头像代码实现(美图秀秀开放)
网页web上传用户头像代码实现(美图秀秀开放) 在制作论坛或者一些门户社交网站的时候,经常要获取用户的头像.之前我们一般都是自己制作flash插件头像上传.或者用js来自己开发一个头像上传功能.比如有 ...
- web上传整个文件夹
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 先说下要求: PC端全平台支持,要求支持Windows,Mac,Linux 支持所 ...
最新文章
- 手机PIN锁死让输入PUK解决方案
- mybatis与mysql的优点_MyBatis的优缺点以及特点
- linux日志使用方法,Linux 日志终极指南
- HTML5 API详解(6):getUserMedia实现拍照功能
- Nginx+Lua+Redis 对请求进行限制
- Python之路(二)Python基础
- php xml getattribute,PHP XMLReader getAttribute()用法及代码示例
- Leetcode每日一题:155.min-stack(最小栈)
- xml文件的三种解析方式 DOM SAM PULL
- python装饰器打印函数执行时间_python装饰器计算函数执行时间
- 5G商用牌照近期发放;华为削减手机订单;苹果、亚马逊、Google遭调查 | 极客头条...
- 19.Virtual Type
- imagej软件分析划痕实验(计算划痕面积及伤口愈合百分比)
- 房地产主数据管理全周期实践[转]
- POJ1250解题报告
- 编程中常用的英文单词
- 微信朋友圈,模仿微信朋友圈,朋友圈点赞评论
- win10 安装sqlserver2008
- 10-219 通过订单表和顾客表,查询订单编号,顾客编号,公司 名称和订单日期
- ActorBeginOverlap
热门文章
- AtCoder Beginner Contest 190 D - Staircase Sequences
- ProGAN: Network Embedding via Proximity Generative Adversarial Network 论文笔记
- zigbee设备类型
- SQL Server 数据库之身份验证和访问控制
- [STT, AST, SpeechToText]的几个简单例子
- Qt WA_TranslucentBackground 导致视频渲染不了的问题
- 谷歌Chrome 操作系统基于浏览器的OS
- 2022年全球市场三维测量产品总体规模、主要生产商、主要地区、产品和应用细分研究报告
- greenplum-cc-web4.0监控安装
- 【后台弹窗】应用跳转直通车--通知栏通知跳转后台应用