起因

事情的起因是我上周末用COS+Jellyfin搭建流媒体平台的时候没注意流量消耗,结果导致同样用来放这个博客资源的储存桶的下行流量激增( 钱包爆炸) ,短短的两天时间快300G的流量就这么白白的没了,为了及时止损,我选择放弃COS直接将资源放在本地服务器并沿用typecho最原始的文件上传的方式。目前的迁移工作已经差不多完成了,今天下了班没事儿干还给网站多加了几个功能。谨以此文记录一下这两天网站的发生的变动以及数据转移的流程。

更新数据库

由于数据源从COS的储存桶的地址变成的typecho的本地储存地址,所以除了转移资源还得将数据库内相关的链接进行更新,通过昨天的折腾和研究,我发现主要有两个条目受制:

blog_content中的text: 博客内容以及上传的文件信息,里面有我们写文章时插入的图片/文件链接

blog_content
blog_content

以及blog_field中的str_value: 文章的自定义字段,由于里面包含文章主图,所以也得更新

blog_field
blog_field

对于内容的更新,我们需要把内容中的原链接:

https://cdn.cirno.me/web/[文件位置]

改为:

https://cirno.me/usr/uplaods/[文件位置]

替换以上内容直接执行REPLACE就行,执行完后数据库的blog_field就能完全恢复了,blog_content也能成功恢复一半,为了恢复另一半我们还得替换以下内容:

blog_content文件类型text
a:5:{s:4:"name";s:27:"image-20220307213138125.png";s:4:"path";s:30:"/web/2022/03/08/1646713047.png";s:4:"size";i:10869;s:4:"type";s:3:"png";s:4:"mime";s:9:"image/png";}

为以下:

a:5:{s:4:"name";s:27:"image-20220307213138125.png";s:4:"path";s:38:"/usr/uploads/2022/03/08/1646713047.png";s:4:"size";i:10869;s:4:"type";s:3:"png";s:4:"mime";s:9:"image/png";}

也就是:s:38:"/usr/uploads/2022/03/08/1646713047.png" 这一段,这里的链接是文件的相对路径,s:38指的是链接的长度为38

幸运的是,得益于typecho重命名上传文件的特性,我发现文件的链接长度都是固定的,所以这里的替换其实也只用REPALCE就行,以下是处理数据库执行的命令

UPDATE `blog_contents` SET `text` = REPLACE(`text`,'https://cdn.cirno.me','https://cirno.me');
UPDATE `blog_contents` SET `text` = REPLACE(`text`,'?imageMogr2/format/webp','');
UPDATE `blog_contents` SET `text` = REPLACE(`text`,'/web','/usr/uploads');
UPDATE `blog_contents` SET `text` = REPLACE(`text`,'s:30','s:38');
UPDATE `blog_fields` SET `str_value` = REPLACE(`str_value`,'?imageMogr2/format/webp','');
UPDATE `blog_fields` SET `str_value` = REPLACE(`str_value`,'/web','/usr/uploads');

最后把更新后的数据库上传到博客空间,不出意外的话就大功告成力!

恢复后

博客恢复完后我开始意识到安全建设的重要性,所以对网站做了以下几点更改:

  1. 开启防火墙:我之前居然一直没开?!!
  2. nginx设置流量限制以及设置重要文件的访问权限
  3. 开启fail2ban服务防暴力刷流量
  4. 开启cloudfare控流以及网站加速

如果还有啥安全方面的建议恳请大佬们赐教!

网站小更新

这几周空闲时间给网站折腾了几个小功能,文章最后再提一嘴介绍一小下

音乐播放功能:

插件详见Credit页面
藏得挺深,点开网站右下角的设置就能看到了
初始界面
初始界面

点击一次开始播放,开始播放后会出现两个图标,点左边那个按钮暂停,右边切歌

开始播放
开始播放

主页右边的阿夸:

还写过一篇相关文章:在博客上养一只可爱的阿夸

主页头图美化:

增加了粒子特效以及暗夜模式logo和粒子发光

头图跟着鼠标动