[图床] 使用腾讯云轻量服务器 + 腾讯云 CDN 搭建 Chevereto 图床和加速分发方案

December 09, 2023
测试
测试
测试
测试
4 分钟阅读

  最近良心云和宝塔搞了个宝塔面板·腾讯云专享版,特供轻量应用服务器。笔者视其默认安装了腾讯云其他服务(DNS, COSF 和 CDN)插件(其实与专享版和普通版也就这点区别),更适合新手用户,故作此文。

准备工作

切换轻量应用服务器的应用

  登录腾讯云控制台,切换到轻量应用服务器控制台,选中用于搭建图床的服务器,备份数据(可以使用快照功能或以其他形式备份)后重置应用,镜像选择“宝塔Linux面板(7.5.1 腾讯云专享版)”,勾选下方“重置确认”的复选框并确定重置。

QCloud-Lighthouse-BTPremium-Chevereto-CDN-1
QCloud-Lighthouse-BTPremium-Chevereto-CDN-1

获取宝塔面板登录相关信息

  待应用切换完成后,单击“重置应用”左边的“管理应用”,根据提示获得登录面板的相关凭据并登录宝塔面板。此操作有手就行,在此不再赘述。

初始化环境

  登录宝塔面板后迎面而来的是关联腾讯云 API 的提示框,按照其提示填入相应的凭据即可,注意此凭据的安全。

QCloud-Lighthouse-BTPremium-Chevereto-CDN-2
QCloud-Lighthouse-BTPremium-Chevereto-CDN-2

  填写完成后,覆盖层下面的提示便是配置建站的环境,在这里笔者推荐 nginx 版本 1.18,php 版本最好是 7.3, 7.4 或 8.0,MySQL 版本 5.6 或以上,phpMyAdmin 版本随意(Nginx, php, MySQL 和 PHPMyAdmin 均为必须),编译安装或极速安装均可。

建立源站

建立基本站点

  等待 LNMP 环境配置完成后,进入“站点”页面新建一个站点,域名填写两个:

QCloud-Lighthouse-BTPremium-Chevereto-CDN-3
QCloud-Lighthouse-BTPremium-Chevereto-CDN-3

  这里以 picbed.qq.compicbed.itxe.net 为例,其中 picbed.qq.com 为源站(不套 CDN),picbed.itxe.net 为通过 CDN 加速的域名(后文会讲到);数据库选择 MySQL,PHP 版本选择实际安装的版本。单击“确定”完成站点的创建。将 picbed.qq.com(注意替换域名)解析到源站服务器。

设置伪静态、CORS 和 SSL 证书

  单击“伪静态”,填入以下内容:

location ~ /\.ht {
    deny all;
}
location ~ /(app|content|lib|importer)/.*\.(po|php|lock|sql|txt)$ {
   deny all;
}
location ~* \.(ttf|ttc|otf|eot|woff|woff2|css|js)$ {
    add_header Access-Control-Allow-Origin "*";
}
location /images {}
location / {
    try_files $uri $uri/ /index.php$is_args$query_string;
}

  效果如图:

QCloud-Lighthouse-BTPremium-Chevereto-CDN-4
QCloud-Lighthouse-BTPremium-Chevereto-CDN-4

  其中,第 7 到 9 行为允许“跨域资源共享(CORS)”,此项设置将解决 CDN 下页面显示异常的问题。

  单击 SSL 证书设置,填入 SSL 证书相关内容:

QCloud-Lighthouse-BTPremium-Chevereto-CDN-5
QCloud-Lighthouse-BTPremium-Chevereto-CDN-5

上传并解压 Chevereto 程序

  访问 https://github.com/Chevereto/Chevereto-Free/releases ,下载 Chevereto-Free 1.3.0 (目前最新版本),上传到网站目录并解压。

QCloud-Lighthouse-BTPremium-Chevereto-CDN-6
QCloud-Lighthouse-BTPremium-Chevereto-CDN-6

Chevereto 程序初始化

  访问 picbed.qq.com (上手时请换成自己的源站域名),进入 Chevereto 安装程序。安装过程在此依旧不再赘述(数据库相关凭据可以回到宝塔面板的“数据库”页面查看和复制,usernamedatabasename 是相同的);安装完成后登录仪表板。

QCloud-Lighthouse-BTPremium-Chevereto-CDN-7
QCloud-Lighthouse-BTPremium-Chevereto-CDN-7

Chevereto 程序设置强制 HTTPS、默认语言、用户语言和开启鉴黄

  欲开启强制 HTTPS,请访问 https://picbed.qq.com/dashboard/settings 修改HTTPSForced;欲修改程序的默认语言,请访问 https://picbed.qq.com/dashboard/settings/languages (注意替换域名),修改 Default languageAuto language ;欲修改用户的默认语言,请访问 https://picbed.qq.com/settings (注意替换域名)修改 Language;欲开启鉴黄功能,请参考 https://www.idc.moe/archives/image-review-for-Chevereto-Free.html

  修改完成之后的效果如图:

QCloud-Lighthouse-BTPremium-Chevereto-CDN-8
QCloud-Lighthouse-BTPremium-Chevereto-CDN-8

设置腾讯云 CDN 分发

向腾讯云请求创建 CDN 加速域名

  回到宝塔面板,打开“腾讯云CDN 1.0”插件,添加 CDN 域名 picbed.itxe.net(上手时请换成自己的 CDN 加速域名)并将 picbed.itxe.net(注意替换域名)解析到腾讯云提供的 CNAME 域名上。

QCloud-Lighthouse-BTPremium-Chevereto-CDN-9
QCloud-Lighthouse-BTPremium-Chevereto-CDN-9

腾讯云 CDN 控制台设置相关配置

  单击宝塔面板腾讯云 CDN 插件内已经创建的 CDN 加速域名,单击“基础信息”右侧的“更多”,进入腾讯云控制台进行更详细的配置。   (宝塔面板腾讯云 CDN 插件功能还不够完善,故跳转到官方控制台进行更详细更高级的配置)

  选择“HTTPS配置”选项卡,上传 CDN 加速域名的证书,回源协议选择“跟随”;

QCloud-Lighthouse-BTPremium-Chevereto-CDN-10
QCloud-Lighthouse-BTPremium-Chevereto-CDN-10

  回到“域名管理”,单击“高级配置”选项卡,在“Response Header 配置”里新增规则,“头部操作”为 设置,“头部参数”为 Access-Control-Allow-Origin,“头部取值”为 *

QCloud-Lighthouse-BTPremium-Chevereto-CDN-11
QCloud-Lighthouse-BTPremium-Chevereto-CDN-11

  注意将“配置状态”改为启动。

QCloud-Lighthouse-BTPremium-Chevereto-CDN-12
QCloud-Lighthouse-BTPremium-Chevereto-CDN-12

Chevereto 程序设置使用 CDN

  回到 Chevereto,访问 https://picbed.qq.com/dashboard/settings/external-services (注意替换为自己的源站域名),将“CDN”改为 启用,“CDN URL”填 https://picbed.itxe.net/ (注意替换为自己的 CDN 加速域名)并保存。

QCloud-Lighthouse-BTPremium-Chevereto-CDN-13
QCloud-Lighthouse-BTPremium-Chevereto-CDN-13

结语

  现在你应该就能享受高 SLA 的腾讯云轻量应用服务器和节点众多、速度飞快的腾讯云 CDN 为你的图床提供的支持了。速度虽快,不要大意:源站的存储空间和 CDN 的流量费用哦!

注释

  • picbed.qq.compicbed.itxe.net 在 IN 上均没有解析;
  • 为写作本文而使用的 picbed.qq.com 的 SSL 证书并非由受信任的公共数字证书颁发机构所签发。

原创文章,作者:iks,如若转载,请注明出处:https://www.idc.moe/archives/QCloud-Lighthouse-BTPremium-Chevereto-CDN.html

继续阅读

更多来自我们博客的帖子

如何安装 BuddyPress
由 测试 December 17, 2023
经过差不多一年的开发,BuddyPress 这个基于 WordPress Mu 的 SNS 插件正式版终于发布了。BuddyPress...
阅读更多
Filter如何工作
由 测试 December 17, 2023
在 web.xml...
阅读更多
如何理解CGAffineTransform
由 测试 December 17, 2023
CGAffineTransform A structure for holding an affine transformation matrix. ...
阅读更多