blog-site

git clone git://git.lin.moe/blog-site.git

 1---
 2title: "我为什么用静态博客"
 3date: 2021-08-29T09:53:04+08:00
 4draft: true
 5toc: false
 6images:
 7tags: 
 8  - 迷思
 9---
10
11> 这里的想法会很依赖我博客的基础设施
12> 我不用 githubg pages 之类的发布方式,是把文件扔自己 vps 的。  
13> 与大多数人用 github 的方式体验可能会有较大区别
14
151. 快
16在普遍的情况下,静态博客比动态博客快,这点应该是不用多说的。    
17为了更加快,我特意选用了没有外部资源引用的主题。  
18原本的主题一个页面只有一个 js 和 一个 css ,然后我加上了评论系统和追踪器(是的,我有 self-host 的追踪器),总共就三个 js,一个 css 。  
19
202. 易定制化   
21主要指前端的可定制化。  
22主题和后端分离,这一点可能在其他动态博客上也有类似的结构。但我用的 hugo 可以有与主题分离的 js 和 css 引入,定制也不一定有与上游同步的困难。这一点不着重提,因为适用场景有限。  
23这里的易定制化不仅是指代码上的,也包括发布流程上的。  
24动态博客的前端定制要走一整套的发布流程,开发测试,推送 git, 发布到生产服务器。  
25静态博客的定制,在本地开发测试完,直接使用生成静态文件的命令就完成了(这里不考虑推送静态文件到网站服务器,我用了自动同步的软件,不需要这一步)。  
26
273. 存储直接,不用关心数据库   
28静态博客的内容是在本地以 markdown 的格式存储的,这比扔在服务器的数据库上要亲切得多。  
29首先体现在备份上。  
30动态博客的自动备份大多数是数据库 dump 出来,然后打包备份。这意味要在服务器或者能连接服务器的地方独立维护一套自动备份的脚本和任务。  
31而静态博客的备份,姑且不说 git ,我文章备份的方式是和系统备份塞在一起。  
32我有每天备份系统重要目录的脚本,我只要把博客 markdown 存储目录加到原有的列表里即可。备份时,会把博客和系统目录塞在一起压缩, gpg 公钥加密一下,就扔备份服务器了。这样就避免了直接操作数据库的痛苦。  
33另外有些动态博客虽然可以用 markdown 写东西,但数据库存的是解析之后的 html 。重新导出后,原有 markdown 格式的丢失是可能的。