Skip to content

刚刚!我更新了小站

Published: at 14:36编辑

前言

八个月前,我将博客系统从 Hexo 迁移到了 Next.js,并基于 Mx-space 实现了一个全新的动态站点,采用了服务端渲染(SSR)技术。Mx-space 是一套动态站点系统,通过连接 PostgreSQL 数据库动态生成网页,相比 Hexo 等静态站点生成器,能够在一定程度上提供更佳的访客体验。动态生成的网页不仅加载速度更快,还能实现实时更新,提升了用户的互动性和满意度。

然而,随着时间的推移,Mx-space 的后续更新并没有达到我的期望,一些功能和性能上的改进也没有跟上我的需求。为了进一步优化博客系统的性能和用户体验,我决定再次进行迁移,部署一套新的静态博客方案。这次迁移的目标是找到一个既能保持高性能,又能满足我个性化需求的解决方案。经过一番研究和测试,我最终选择了 Astro.js 作为新的 blogging 平台。Astro.js 的静态生成能力和灵活的组件化设计,使我能够更好地控制网站的各个方面,同时也确保了优秀的加载速度和用户体验。

寻找方案

目前我所需要的功能有这些:

最终我在一堆 Star 中挑选出了一个全新的方案—— Astro.js,选择 Astro.js 是因为它专门针对内容网站而设计的且:

Shiro vs Astro

你可能会问:Mx-space 已经足够成熟了,为什么不再继续使用了呢?

这主要是以下几点改变了我的看法:

对于一个动态站点,Mx-space 是非常好的选择(至少比 Halo 好),但对于一个没有多大访问量的小破站来说,这就有点高射炮打蚊子了。

敲定主题

在逛了一圈 GitHub 后,我选择了 AstroPaper 作为主选项,并成功基于该主题进行了二次开发。如果你打算从头开始开发或者导入现有的样式,Astro.js 本身提供了一个非常简单的博客模板,也是一个不错的选择。

主题修改

项目部署

项目已经成功部署在 Cloudflare Pages 上,并且集成了 Cloudflare CDN 以提供高效的内容分发服务。通过 Cloudflare CDN 的优化,网站的加载速度得到了显著提升,测速结果基本显示为深绿色,表明网站在全球范围内的访问速度都非常快。

为了进一步验证网站的性能,我在 PageSpeed Insights 上进行了 Lighthouse 测试,结果显示网站在性能、可访问性、最佳实践和 SEO 等各个方面都达到了满分,证明了网站在用户体验和技术实现上的卓越表现。

桌面端

移动端

结论

我在 2024 年 10 月 17-18 日将整个博客系统成功从 Mx-space 迁移到了 Astro。迁移过程中,所有博文均已顺利迁移完成。虽然在迁移前后发生了一些小小的路由变化,但由于我之前在 SEO 方面做得很好,这些问题并没有对网站的搜索引擎排名造成太大影响。为了进一步确保用户体验,我们已经为旧站的链接添加了对应的跳转设置,确保用户能够顺利访问到新的页面。迁移后,网站的访问速度显著提升,并且提供了 RSS 浏览器可阅读订阅RSS 订阅,方便 RSS 用户订阅本站。


上一篇
如何编写一个摩斯电码转换工具:详解与实现
下一篇
记一次有趣的钓鱼邮件分析