为什么自己搭博客

之前用过几个博客平台,但总觉得不够自由。自己搭建可以完全控制每个细节——从排版到 URL 结构,从加载速度到暗色模式。而且搭建过程本身就是一次很好的学习。

技术选型

对比了几个主流方案:

方案优点缺点
WordPress生态丰富太重,需要数据库
Hexo成熟稳定Node 版本要求旧
Hugo构建极快模板语法学习曲线陡
Astro现代、灵活、默认零 JS相对较新

最终选了 Astro。理由很简单:默认输出纯静态 HTML,没有多余的 JavaScript,页面加载极快。

搭建步骤

创建项目

npm create astro@latest my-blog -- --template blog

定制样式

去掉了默认模板的大部分样式,重新设计了一套基于中文排版习惯的 CSS。核心原则:

  • 字体使用系统原生中文字体栈
  • 正文 17px,行高 1.85,适合长时间阅读
  • 最大内容宽度 680px,留白充足
  • 色彩低调,不使用高饱和度的颜色

配置 Nginx

server {
    listen 443 ssl http2;
    server_name lianyeking.top www.lianyeking.top;
    root /var/www/my-blog;
    index index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

申请 SSL 证书

acme.sh 配合 DNS 验证,从 Let’s Encrypt 申请了免费的 SSL 证书。整个过程出乎意料地顺利——不过阿里云的透明代理拦截了 HTTP 验证,换成 DNS 验证后就解决了。

心得体会

搭建过程遇到不少坑,但解决每一个问题的过程都很有收获。写博客不仅是记录,也是对自己知识体系的梳理。

后续还想做:

  • 添加搜索功能
  • 优化 RSS 输出
  • 照片集页面