博客外链图片一直都是件很麻烦的事情,闲来无事决定搭个图床自用。尝试了一下国内的开源项目“树洞外链”以及老牌的“Clevereto”,在这记录一下心得。

图床工具

先说说常用图床及自建图床工具吧。

公共图床

  1. 微博图床:国内图床的中流砥柱。
  2. imgur:09年就成立了的国外老牌图床,唉,看长城内外...别想了。
  3. sm.ms:图片5MB以下,不错的图床。

私人/自建图床

大多数私人图床都是依靠于一些CDN服务商和前端工具搭建起来,当然也可以直接使用V2EX,GitHub这些提供的图床服务。

  • 云存储:七牛云/又拍云
  • 服务商:可选择各大主机商便宜,硬盘大的套餐,纯靠云存储的话就砸钱在CDN上吧。
  1. Chevereto:比较知名的PHP图床,现在有Free/Paid两种版本,貌似支持CDN和外部存储的话需要付费版。
  2. 极简图床:现成的图床服务,免费,支持七牛云,之前一直在用。
  3. Get Link!:类似于极简图床。他家公共服务器貌似没弄好,所以相当于把极简图床装到自己服务器上使用。
  4. 树洞外链:看官网介绍很厉害,有点小bug,可以接受。

树洞外链

‘树洞外链’是近两年新的开源项目,生态不错,论坛还算活跃,它的官网上是这样介绍的。

树洞外链允许你将文件存放在不同位置-本地服务器、远程服务器、七牛云存储、阿里云OSS、又拍云存储。你只需进行简单设置就能对接云存储服务。我们后续还将开发支持更多的存储方式。

想着我对图床功能需求不高,于是装上尝试了一下。

da3b5e431ba3e84c.jpg

整体来说界面很清爽(可以去社区里面更换好看的主题),功能上比较完善,没有分类功能,如同介绍所说支持多种存储方式,算是亮点吧。其余的话就是后台管理页有点小bug,可以接受。

Clevereto

折中考虑了一下最后还是又装了 Clevereto,主要是整理强迫症没有分类目录的功能实在是很烦躁(x_x),后续等等看树链官方会不会新增功能,或者抽空写个标签插件吧。

Phower的图床 - Le Phower's Gallery

暂时还在做一些后台调整,后续再陆陆续续开放注册用户上传吧。(有需要的盆友也可以留言提前使用)

软件安装很简单,去 Github 项目页上看看就好,网上教程也不少,主要提一下安装中可能遇到的几个问题以备后用。

Clevereto 安装权限

使用官方安装脚本'index.php'需要很高的文件权限,记得设置成777。

Clevereto 错误404解决办法

如果服务器是 Nginx,基本第一步安装好后再次打开网站会出现404错误。因为 Chevereto 默认提供基于 Apache 环境的伪静态规则,需要设置以下Rewrite 伪静态规则:

location / {
            if (-f $request_filename/index.html){
                rewrite (.*) $1/index.html break;
            }
            if (-f $request_filename/index.php){
                rewrite (.*) $1/index.php;
            }
            if (!-f $request_filename){
                rewrite (.*) /index.php;
            }
            try_files $uri $uri/ /api.php;
        }

        location /admin {
            try_files $uri /admin/index.php?$args;
        }

Clevereto 使用CDN服务

因为服务器在国外,国内使用还是需要CDN加速一下。有条件的话可以购买 Clevereto 付费版,支持外部云存储。免费版的话我们就还是老老实实用外链CDN加速吧。

第一步,创建七牛云账号,每个月 10G 流量 + 10G 存储。
第二步,在后台【对象存储】中新建【存储空间】,然后可以获得这个空间的测试域名。
第三步,在【镜像存储】下,添加【镜像源】,地址为图床网址,如 http://view.phower.me/。
第四步,管理员登陆 Clevereto 后台,【设置】->【外部服务】->【启用CDN】-> CDN URL填入七牛云存储空间的测试域名。
第五步,开始体验飞速的图床服务,小心流量!!小心流量!!