autoPicCdn
是一款结合GitHub仓库和jsdelivrCDN的开源免费图床,很好的利用的GitHub的无限存储空间和jsdelivrCDN的全球无限流量CDN,本站自从6月18号起就开始使用该模式,目前体验非常好。
0. 介绍
关于GitHub和jsdelivrCDN的接好,可以阅读下前面的文章:最佳全球免费CDN组合:Github+jsDelivr=无限容量+无限流量全球CDN
autoPicCdn则是在这个基础上,前端使用layui构建上传页面,后端依靠php实现。
1. 功能
目前作者已实现两种模式:GitHub存储或Gitee存储。笔者跟倾向GitHub存储,无条件的只能使用gitee存储了,需要注意gitee限制1M以下的图片文件,一遍截图也够用。
项目开源地址: yumusb/autoPicCdn
2. 使用
A. 宝塔搭建网站
准备条件:宝塔添加一个网站,上传源码并解压到网站目录下。
源码下载
同时宝塔里创建数据库,并导入源码目录下的pic.sql
,然后修改网站目录下up.php
文件。
$database = array(
'dbname' => 'YourDbName',//数据库名
'host' => 'localhost',
'port' => 3306,
'user' => 'YourDbUser',//数据库用户名
'pass' => 'YourDbPass',//数据库密码
);
修改为宝塔里的数据库信息。
B. 对接到GitHub仓库
准备一个GitHub帐号,新建一个图床存储仓库,获取token权限,https://github.com/settings/tokens
.
然后到宝塔面板里,编辑源码文件里的up.php
文件。
define("TYPE","GITHUB");//选择github
define("USER","pic-cdn");//GitHub用户名
define("REPO","cdn2");//仓库名称
define("MAIL","yumusb@foxmail.com");//邮箱无所谓,随便写
define("TOKEN","YourToken"); //上一步活得的Token
至此已搭建完毕,然后访问域名,就可以使用图床了。
3. 其他
实现原理,开头的文章里已经讲述过,对于白嫖GitHub和jsdelivr,是否足够安全可靠?笔者认为是可靠的,GitHub本就是全球最大的开源社区,存储空间一直以来都是无上限。而jsdelivr也是极力满足开发者,支持无账号直接引用存储在GitHub里的资源。GitHub还有一个Acition的操作,如果你想多一些备份,可以用这个自动备份到Docker或者OneDrive或谷歌云盘、阿里云OSS等等。因此,对绝大多数的内容创作者而言,没有比这个更安全可靠的了。