告别删文:在哪里写博客?

本文意在比较几种值得推荐的热门博客方案。包括自建 WordPress 博客站、GitHub 静态博客、Blogger 和 WordPress.com 等。主要面对还在几种技术方案之间进行犹豫的人,已经搭好博客的人也可以在考虑备份博客站时用以参考。因为每种方案在网上都有很多详尽的教程,本文不对具体搭建过程做详细的逐步解说。但对于通常教程中未提及的部分,以 Tips 的方式补充说明。只看结论的话拖到最末即可。

为照顾没有技术基础的读者,本文使用脚注对一些词语做了注解,可点击相应链接跳转脚注和跳回原文。如果您觉得本文尚有未尽或难懂之处,欢迎在评论区留言,在 GitHub 上提 Issue,或者对这个文件发 PR。

感谢 atreides 对本文的批评和贡献。

CHANGELOG:
Update on April 8th 2020: 增加了「广告收入」评价,补充了托管型 VPS
Update on March 8th 2020: 增加了 netlify, GAE 和「长期可持续性」评价
Update on March 7th 2020: 增加了 docker 部署
Update on March 5th 2020: 接受了 atreides 的修改意见,增加了不同评价标准的横向比较评价,增加大量脚注和 Tips,重写了自建站点和静态博客两章

自主博客

在这系列文章的开篇中,我提到,要想保证自己对于自己产出的文字有绝对的控制权,一个自主博客1站点是最可靠的文字存档所在地。先定义一下这里我们所说的自主博客:

自主博客
所谓自主博客,是指博客的作者对于一切内容和内容的呈现形式和传播方式拥有最终决定权的博客。

  • 对于内容具有决定权意味着数据完全属于作者,其创作与修改不受其它人的干涉,数据可以不受限制地导入导出;
  • 对于呈现形式具有决定权不仅包括对于博客页面排版风格的决定权,也包括内容是否可以依作者的意愿以完整或不完整的形式发布;
  • 对于传播方式拥有决定权意味着博客内容 URL 的控制权属于作者,作者可以决定内容以公开或非公开的方式发布,可以自由选择 RSS 等网页之外的传播渠道。

为什么这些条件很重要呢?

  • 对内容的控制权,意味着,平台(博客服务提供方等)不能够随意删除和修改作者的文章;
  • 对呈现方式的控制权,意味着,平台不能随意隐藏内容;
  • 对传播方式的控制权,意味着平台不能随意停止内容的访问,不能随意破坏我们分享出去的链接。

在最坏的情况下,即使整个平台停止服务,作者也可以导出所有数据到其它平台并重定向 URL2 到新的博客上。如果要保证我们的表达能以我们想要的方式被人听见,这些都是非常重要的。不用说,公众号、头条号、百家号等平台一条都不符合。

因而,当选择一个准备安心写上几年的博客平台的时候,我们为了内容的控制权,应该注意下面这些条件:

  • 是否支持绑定作者自己拥有的域名3。域名在作者手中意味着在切换平台后可以将原有文章的所有链接指向新的平台。没有自己的域名的话,搬家之后原来文章的网上声誉和链接就要从头来过
    • 同样重要的一点是,是否允许作者决定文章的静态链接的形式4
  • 是否提供方便的数据导入导出。许多平台为了吃住作者而故意不提供数据导出功能
  • 是否存在删禁文章和帐户的情况,如果有,其标准是否公开透明,申诉机制是否及时有效

现在还愿意安安静静写博客的人越来越少了,其中大部分人年龄已经大到看惯了互联网服务的沧海桑田。就博客来说,国内当年用户颇多的网易博客和百度空间都已经关闭。新浪博客也长期处于疏于维护的半死不活状态。没有什么服务会是永远开放的,写了几年的博客一朝关闭数据却不能迁出是非常打击人的一件事——许多朋友都因此封笔。就算不为了防止自己辛苦写好的东西被删,哪怕是为了预防平台关站,选择自主博客方案也是非常重要的一件事。

当然,即使是当年博客在中国还非常火爆的时候,大部分博客服务提供商也是不符合上述条件的。如果读者最近准备新开或者是重开博客的话,选择自主博客吧。就不要和那些风烛残年的新浪博客之流浪费时间了。

博客方案的选择

那么,现在还有哪些好的自主博客选择呢?

  • 自己架设一个服务器是最彻底的方案
  • 近来使用 GitHub Pages 来发布一个静态博客也是相当流行的选择
  • 使用 WordPress.com 或者 Blogger 之类的有节操的大型博客服务商
  • 使用 Bitcron 之类的小众博客服务商

下面从上手容易程度、费用、访问性能、用户群体等方面来详细比较这几种方案,简单提示一些容易踩的坑,并在最后给出不同人群的推荐。

不同方案的对比

自建博客

自建博客,顾名思义就是站长自己买服务器,自己安装博客框架或程序,因而对于博客服务端具有较完整的控制权。服务器的选择有 VPS5、虚拟主机6等,博客程序的选择有 WordPressTypechoJoomla!Drupal 和静态博客等。其中 WordPress+VPS 是目前绝大部分人所采用的方案。大概情况如下表

方面 评价
技术门槛 较低
费用 60 美元/年
访问性能 一般或较差

自建 WordPress+VPS 站点原本是需要一些 Linux、HTTP 服务器、MySQL 和 php 设置的知识的(如果不需要自己高度定制的话,并不需要学习 php)。但是现在各种一键安装包很多、照着教程一路搞下去还是很容易的。只是没有相关知识的话进行一些设置的时候可能会找半天不知道问题在哪里。然而现在有一类托管型 VPS7可以让 VPS 也不那么折腾。读者可参见 WP 叔叔这篇文章 中的介绍。

价格的话,一线 VPS 服务商如 LinodeDigitalOceanVultr 等的最低配服务器基本都是 5 美元每月。对于一个流量不大的个人网站来说绰绰有余。在这几个自主博客方案中算是比较贵的方案了。

可是只买一台服务器的话,访问性能其实是不大理想的,一来总会有访客到服务器的距离比较远,二来国内的网络环境比较复杂,有些地区的有些运营商就可能连接不上,更不用说有时可能遇到整个 IP 段8都被墙掉的事。如果网站不巧被黑客盯上,基本上个人也是无力防御 DDoS9 攻击的,随便被攻击一下就会下线。如果博客内容惹到了谁的话,就需要当心了。

上面讨论的是 WordPress+VPS 的主流方案。WordPress 的主要优点是用户群最多,因而可选的主题和各类插件极其丰富,遇到问题也容易找到解答。自己买 VPS 虽然有点小贵,但主要优点是,除了放自己的博客之外,还可以用这个服务器做些别的事情,比如说挂个 BT10,设个同步网盘11,弄个备用梯子什么的。这套方案的主要缺点一是小贵,二是访问性能不大理想。如果希望提高访问性能的话,装一个 AMP 插件可以让搜索引擎替你缓存页面。

自建博客当然也有其它的方案。
如果不用 VPS5 而用虚拟主机6的话,费用可以再降一些。两者的详细对比见脚注。我并不推荐虚拟主机6,因为它无法绕开 VPS5 方案的缺点(不能保证任何地方的访客都可以流畅访问),还不像 VPS 一样灵活,在博客之外的可玩性要差一些。这种使用 cPanel12 的虚拟主机倒是有一点好,就是对于用户更加友好一些,几乎不用碰命令行,但是也就没法折腾些别的东西玩。还有一种更加简单的服务,只提供一个可以让用户上传文件的 FTP,现在已经没什么人用了。
动态博客除去 WordPress 外,也有不少其它方案可以选择。比如说有的人喜欢 Typecho 的极简。还有人用其它的 CMS 系统如 Joomla!Drupal。不过其它方案的人气都没有 WordPress 这么高,因此不太适合技术能力不足或者不愿意折腾的人。
也有人在自建服务器上放静态博客。在当年最低配 VPS 还普遍内存比较小的时候这还可以节省点服务器资源,现在这么做的优点实在不多。不是说它以前的优点不复存在,而是说现在和使用 GitHub 之类的大型网站部署静态网站的方案相比没有优点。使用 GitHub Pages 可以享受它的免费全球 CDN13 和防御,自建服务器还需要为此伤脑筋。我能想到自建服务器上搞静态博客的唯一理由是博客体积或者访问量太大超出了 GitHub Pages 的限制。如果是这样的话,使用自建静态网站外加 CDN13 会是一个好选择。

Tips

各种 WordPress 建站的教程网上有很多,这里只提一些不太容易被注意到的事情。

  • VPS 选购时,一般认为 KVM 和 Xen 方案的比 OpenVZ 的好
  • 使用 LNMP 或者 LAMP14 一键安装包来准备 WordPress 的运行环境时,推荐使用 VPS 服务商提供的一键安装包而不是网上随便什么地方找的一键脚本。后者有可能会和系统包管理器冲突导致网站在升级后挂掉
    • 懒人也可以使用 docker compose 部署 WordPress
  • 要注意常见的 Linux 服务器安全守则:关闭密码登录15,打开防火墙,做点基本的攻击防护,经常更新系统和软件。不然你就是在裸奔
  • WordPress 也要经常更新。每年都有不少新的漏洞被发现
  • 不想折腾以上东西又想要 VPS 的性能或者可玩潜力,那么就用托管型 VPS7
  • 启用 HTTPS 可以增加在 Google 结果中的权重,证书用 certbotLet’s Encrypt 获取就可以了
  • 手机友好的页面在 Google 结果中更靠前。所以不要用太老旧的主题。若是能打开 AMP 尤妙

静态博客

最流行的方案是 GitHub+Jekyll,大概情况如下表

方面 评价
技术门槛 中等
费用
访问性能 较好

对技术不了解的读者可能会对「静态博客」是什么感到迷惑。所谓静态,是指博客的页面都是由静态网页构成,不涉及需要服务器动态计算处理的内容。打个比方,类似于大家去食堂吃饭:有的食堂把饭菜预先装盒,你只能拿到成型的盒饭;有的食堂会设有打菜窗口,根据客户需要现场装盒。前者就是静态,网页已经生成好了,访问者看到的就是现成的网页;后者就是动态,根据情况生成需要的网页16。静态博客可以提供相当好的访问性能,但本身并不能承载用户评论之类的动态内容,往往需要外挂其它服务来实现。

就静态博客来说,现在最流行的是使用 GitHub 搭建静态博客。因为 GitHub 这个网站已经成为当代各行各业(包括体制内)码农的必备生产工具,它已经太大而不能倒,墙掉它是一个会让决策者颇踌躇的事情。另外一点难得的就是 GitHub Pages 是没有广告的,适合价格敏感人群。使用 netlify 和自建 VPS 之类的服务端的讨论见本节最末。

主要的限制是流量和总文件体积。前者是每月 100G,不放图片的话不大容易超,但是被 DDoS9 攻击的话很可能会下线;后者限制为 1GB。因为 GitHub 提供网站的 CDN13 和防御,访问性能也是相当好的。主要的缺点是对于非程序员来说需要一定的折腾精神才能上手,发布文章需要有 git,没法在手机上随手写随手发。种种不便和折腾对于习惯了「注册帐号、访问网站即使用」的用户(特别是广大人文学科培养的朋友)而言可能仍有裹足难行之处。

GitHub Pages 支持普通 HTML,markdown 和 org 文件。只写 markdown 的话页面过于素净,但纯手写 HTML 更是自己找虐。所以主流的选择是使用一款博客网站静态网页生成工具将自己的博文目录转换为一个静态网站并同步到 GitHub 上。目前主流的选择主要有 JekyllHexoHugo 三款。

  • Jekyll 有 GitHub 官方背书。不需要先生成 HTML 再上传到 GitHub,站点源码可以直接上传到 GitHub 上,因而写博客的机器上不一定要安装 Ruby Gem 和 Jekyll 程序。但如果使用了一些复杂的主题,则必须安装 Ruby Gem 和 Jekyll 并在本机生成 HTML 后上传发布。
  • Hexo 使用 Node.js 开发。在本机生成网站的速度比 Jekyll 更快一些,中文文档相当完善。设计上专注于博客,想用它做其它网站比较困难。
  • Hugo 使用 Golang 开发,生成网站的速度比 Hexo 更快。这些年来发展速度极其迅猛,大有超过前两个的势头。比 Hexo 更加灵活,也可以做博客以外的其它类型网站。

三个方案选哪个呢?如果读者自己会写 Ruby/js/Go 的话,选择自己最熟的语言对应的生成器。如果都不会,去三家的网站上挑一个自己最喜欢的主题就好,对于轻度使用者来说三者并没有那么大的区别。

相对于鼠标点点点就可以搞定的 WordPress,使用这些方案要想开始写博客,至少需要先学习 markdown 的语法,在电脑上安装 Ruby/Node.js(安装 Go 不是 Hugo 必须的),安装生成器,学习使用 git,然后才能开写,适合程序员或有折腾精神的人。值得指出的是,对于没有技术背景的人来说,git 并不是一个容易学习的软件,GitHub 的 Windows 客户端也不是一个好用的客户端。虽然说不懂技术的人也可以用 GitHub Windows 客户端用鼠标点点点来完成基本的代码同步,但遇到问题的时候并不容易排查。尽管网上有相当详尽的博客部署教程,但这些教程在用户走到岔道的时候不一定能管用17

这三种方案的准备工作都差不多。安装网站生成器本身,fork 一个喜欢的主题,再建立一个目录存放自定义的网站数据和博文。建立自己 GitHub Pages 的 repo 并使主题的输出目录指向它(或者使用 git submodule)。每次发布需要使用生成器生成网站,然后再 push 上去。

如果读者有一些钻研精神,不满足于上述中文互联网上常见的标准建站教程指示的工作流程的话,GitHub 于 2019 年推出的 GitHub Actions 可以进一步简化上述工作。本地甚至不再需要安装站点网页生成器(以前是只有简单的 Jekyll 站不用安装,Hexo 和 Hugo 都必须自己生成网页),专心写博客,写完文章 push 上去之后 GitHub 可以替你完成后续的工作。

这也算是抹平了 GitHub Pagesnetlify 的一个重要功能差距。netlify 一直就可以自动替你完成网页生成的步骤,操作比 GitHub Pages 要简单一些。其免费版也提供每月 100GB 流量而并不限制站点数目,流量超出之后可以付费购买更多流量,而 GitHub Pages 是一个纯粹的福利项目不能付费升级。netlify 同样提供全球 CDN13 加速。这两年 netlify 人气上升得很快,是值得考虑的一个选择。目前大概因为它的企业用户众多且它还没有多少国内个人用户,此站还没有被墙。

也有一个方案是使用 Google Apps Engine 来实现和 netlify 一样的自动构建和托管。但是由于墙的缘故,必须自己配置一下第三方 CDN 才能让大陆访问。设置也要麻烦一些。

自建 VPS 当然也可以用上述 Jekyll/Hexo/Hugo 来部署静态博客。不过如前面所讨论的,相对于专业服务商来说,这样做并没有什么优点,仅供流量需求特别大的人使用。

Tips

  • 多台电脑同步既可以使用 git,也可以使用网盘
  • Windows 下安装上述博客生成程序,可以试试 scoop
  • 不推荐从源代码开始编译 Hugo,因为会下载 2GB 之多的库文件。直接用编译好的 Hugo 就可以
  • 学会使用 GitHub Actions 或者使用 netlify 之后就不需要在自己电脑上装博客生成程序了,同步和写作都会更方便一些
  • 上述生成器的大部分博客主题都已经带了 RSS。如果生成的主页上没有找到 RSS 的话,可以试试 网站地址/feed.xml 下是否有 RSS。有的话手工添加一个超链接即可。
  • 虽然网上大部分教程都推荐使用图床,但如果博客访问量不会超过 GitHub 限制的话,图床并不必要。懒得折腾就算了
  • 即使流量超限,除图床外还有一个选择就是使用全站 CDN。CloudFlare 的免费服务可以顶一顶看

大型博客托管商

虽然说国内没什么有节操的博客托管商,但是境外还是有一些的。最有名的是 Blogger 和 WordPress.com。这两家都提供自定义域名和完整的用户数据导入导出。Blogger 和 Blogspot 是一个东西,前者用于写博,后者是博客发表所用的默认域名。

使用大型博客托管商的最大好处是不需要操心任何技术细节,他们提供强有力的团队进行运维,自己的博客几乎永远不会因攻击而下线,在全球除中国大陆以外的地区访问速度都很好。主要的缺点则是在大陆访问往往有窒碍之处。即使有时可以通过换绑自己的域名以绕开限制18,但并不能保证大陆用户的普遍可达,且这些方法何时失效也是不确定的事情。

就 Blogger/Blogspot 和 WordPress.com 两相对比的话,前者完全免费,而后者提供更多的自定义功能。就可选的主题19来说,Blogger 要少一些,大部分主题都比较难看。值得一提的是,Blogger/Blogspot 并不提供自定义博文链接的选项,URL 只能使用固定格式,所以不是完全意义上的自主博客。而 WordPress.com 的免费版功能相当受限,页面还有广告。想要发挥 WordPress 博客的诸多强大功能,需要付费订阅20。尤其是如果有安装插件的需求(使用插件增强博客的功能对于自主建站的人是很常见的)需要选择每月 25 美元的 Business 版。故而若有特定需求的话不比自行建站便宜。

这里再多说一下 WordPress 套餐(Plan)的选择。如果只是想有个地方写字,对于一切除简单主题19以外的定制都兴趣不大的人,免费服务不失为一个选择。但是 WordPress.com 免费服务不能绑定自己的域名,不属于这里我们推荐的「自主博客」。Blogger 相较之下是更好的选择。而要想绑定域名,WordPress 最便宜的套餐年付 48 美元,与自行建站的费用相差无几,胜在省心省力不用操作运维。想去除广告至少需要年付 96 美元,大部分人会觉得不值。年付 300 美元的 Business Plan,老实说,只适合真的想用网站赚钱的人。如果只是为了使用一两个插件,这个代价未免太高。

综合来说,如果不在乎境内访客的话,免费服务选 Blogger 更好一些;愿意花钱的话就需要在 WordPress.com 的套餐和自己建站之间犹豫一下了。

Medium 等较年轻的平台因为截止本文写作时并不提供绑定自定义域名的功能,故而不推荐。

Matters 是一个很好的平台,但并不是一个传统意义上的博客平台,也不提供绑定域名的功能,在此不做讨论。

小型博客托管商

相对于大型博客托管商的尽数被墙,小众博客托管商在有着大型博客托管商的运维优点的同时,有可能尚未被墙。如果没有被墙且符合前述自主博客的定义,那么也是很好的选择。如果是像 Bitcron 这样的邀请制注册,可能相当长时间内都不会有问题。

我个人很喜欢 Bitcron 的愿景:作者只需要用 markdown 专注写作,其它都交给 Bitcron。几乎没有缺点:写作方便,文章数据透明,访问性能好,用户不需要折腾容易上手。没有免费版但价格也可以算非常公道。

对于这种小型服务商就不要苛求它们提供免费服务了,它们也没有巨型企业在后面支持,不收费难以维持优质的服务。

更新:Bitcron 作者可能在计划新的东西。也许会有更新更好用的产品出来
更新:netlify 因为现在还没引起国内的普遍注意,也可以算是小众服务商。讨论见静态博客部分。它的免费版相当够用,使用有一定门槛。并不算零门槛服务,不大能算作此类。

选哪个?

上手难度

专业博客托管商最容易上手。其次是自建 WordPress。GitHub Pages 需要有一定的折腾精神

费用比较

GitHub 和 Blogger 最便宜,其次是一些小型博客服务商。WordPress.com 和自有 VPS 都要贵一些

访问性能

境外访问的话,GitHub 和 Blogspot、WordPress.com 没有显著差别。大陆访问的话,对大陆有专门优化的小型博客服务商有显著优势,其次是 GitHub。自建服务器不大稳定,而大型博客服务商被墙得很厉害。

写博手段

写博方式 支持情况
在线写博 除静态博客外基本都支持
邮件写博 除静态博客外基本都支持
微信写博 个别小型博客商支持
markdown 基本都支持,可能需要插件或者第三方服务
GitHub GitHub 静态博客;WordPress 可以装插件

可见就「随时随地写作」来说,GitHub 静态博客方案是最不方便的,其它几种都相差不远。

如果读者像我一样希望所有的博文数据都有 markdown 导入导出支持的话(这样清晰易读容易导入导出,文档结构和样式分离,方便搬家跑路和一文多发。此外,所有博文在硬盘上看得见摸得着会让强迫症感到非常舒服),GitHub + Jekyll/Hexo/Hugo 当然是原生支持。如果使用 WordPress 的话,中文博客可以安装Writing on GitHub插件。有一个人气更高的插件 wordpress-github-sync 但是据说对于中文博客标题会有 bug。Bitcron 平台原生支持 DropBox 同步和 markdown 写博。

长期可持续性

不得不承认的一点, 大部分人心血来潮开了博客之后坚持不了几年就因为工作繁忙或者结婚生娃而再也不写了。决定能否长期写下去的主要因素是上面的「上手难度」和「写博手段」两点。像 GitHub 静态博客方案,对于没有技术背景的人,如果半年没写,多半就忘记怎么发博了。在考虑开博的技术方案时,对于自己未来做事的恒心也要有充分估计。

假如在最坏情况下,真的彻底封笔不写或者懒得维护下去的话,另外一个值得考虑的因素就是自己已经写下的文字是否能长期存在。目前看来,GitHub Pages 和 WordPress.com 本身都可以保证长期存在下去,至少未来十年不会关闭。但值得指出的是,长期不用的账号有可能被关闭和回收。下面分别讨论几种不同的服务端方案:

  • GitHub Pages:只要自己还在持续使用 GitHub 就不用担心被关闭。但如果除了博客以外从来不用 GitHub,那就有可能被回收帐号。目前没有明确的账号长时间不用的回收标准。此网站会长期存在。
  • WordPress.com:目前没有明确的免费账号长时间不用的回收标准,但我认为帐号被回收的可能性较小,因为 WordPress.com 可以从页面广告回收成本。此网站会长期存在,付费用户只要一直交钱就可以保证网站存在。
  • Blogger:Google 帐户只要还在使用就不用担心 Blogger 被关。但 Google 有砍掉产品的恶劣先例。目前没有证据证明 Google 有关停这个服务的想法。
  • netlify:作为一家初创公司,虽然目前势头极好,在未来十年是否会被竞争对手挤掉尚不确定。
  • 各种小型服务商:不大确定,全看创建者是否靠谱是否愿意一直维护。
  • 自建 VPS:只要一直续费就不会有事。但总不打理的话,网站有一定概率挂掉。还需要注意域名也需要一直续费。

社区资源

WordPress 拥有最多的社区资源,最丰富的主题和插件。即使要跑路,几乎所有其它方案都能找到从 WordPress 导入的工具。其它几种选择的社区资源要差一些。小众博客平台的主题选择是最少的。

安全防御

如果因为博文得罪了人而被 DDoS9 攻击的话,自建服务器几乎完全无力应对攻击。GitHub Pages 也可能下线,因为这不是 GitHub 的核心业务,犯不着花大力气帮你防护。小型博客托管商的防护能力每家都不一样。防护能力最强的是 Google Blogspot,而 WordPress.com 也不错。

除去旨在使网站下线的 DDoS9 外,自建服务器还要当心各种以控制服务器为目的的常规攻击。去后台看一下的话,每天几千次试密码是稀松平常的事情。不做基本防护而成为肉鸡21或者被挂马22的个人网站很多很多。

广告收入

对于本文所列举的各种开博客方法,大部分只需要自己有域名就可以放广告。Google AdSense 之类的广告方案要求拥有根域名,这也是自有域名的一个重要好处。如果自己没有域名而需要使用博客托管商的域名的话,Blogspot 因为是 Google 自家的,可以直接开通 AdSense。而其它平台往往需要付费才能控制自己页面上的广告。值得一提的是,WordPress.com 即使是付了钱,绑定了自己的域名,似乎也只能使用它自家的 WordAds 平台来放广告。

当然,这年头没多少人读博客,想靠广告来回本甚至赚钱基本是不可能的。急功近利反而容易失了开博的初心。所以广告收入这一项也就是列在这里供参考而已。

总结

下表对于有代表性的自主博客方案做了一个汇总。不大推荐的方案没有列入,详见前述章节的讨论。

WordPress+VPS GitHub+Jekyll/Hexo/Hugo WordPress.com Blogger23 Bitcron 静态博客+VPS+CDN
搭建难度 较低 中等 很低 很低 很低 中等偏难
易用性 中等 非常好 中等
写博手段 单一 非常多 单一
社区资源 非常多 比较多 非常多 一般
最低费用 60 美元/年 0 48 美元/年 0 60RMB/年 60 美元/年
长期可用 要一直交钱 只要帐号存在 同左 同左 几年 要一直交钱
访问速度 一般或较差 较好 境外好境内差 同左 较好 较好
流量限制 1TB/月起 100GB/月,不可加购 3GB 10TB 级起
并发承载24 很好 很好
文件限制 20GB 起 1GB 6GB 15GB 起 1GB 起 20GB 起
安全防御 较好 很好 一般 一般
广告收入 可自设 可自设 付费,WordAds AdSense 可自设 可自设

综上,如果你的主要读者都在境外,选 Blogger/WordPress.com。不想掏钱就用 Blogger。否则用 WordPress.com。想折腾的话也可以用别的方案。

如果你的主要读者在大陆,那么就需要平衡一下费用、折腾程度等因素了。不想出钱但是不怕折腾的话选 GitHub/netlify 静态博客。愿意出点钱以免折腾可以选择靠谱的小型博客服务商如 Bitcron。喜欢完全自主掌控感的,选自建服务器(也就是说既费钱又有点折腾)。

系列文章

为自己,为别人,准备一条路
预防封号:备用联系方式的选择
告别删文:在哪里写博客?


  1. 原文使用「独立博客」一词,但因为中文语境中对此词语已有约定俗成的定义:自己拥有域名和服务器的博客,故在此另造新词「自主博客」以免误导读者。按,英文世界中向无「独立博客」的说法,独立博客也不如中文世界中这样流行。这有几方面原因,一方面是独立博客不过是自有服务器的个人网站的一种特殊形式,有能力建站的人并无必要特别吹嘘自己「独立」建立了一个博客。另一方面,由本文讨论可见,自行建站在性能上缺点颇多,英文世界的内容审查不似简体中文世界这样严格,大部分人可以信任博客托管商,最多只有绑定自己域名的需求,并无自建服务器的需求。私以为中文世界中的「独立博客」之义用「自有博客」更名实相符,大家都称之为「独立博客」暗含有对国内诸博客运营商的不满之意。 
  2. URL,Uniform Resource Locator。访问一个网页时在浏览器地址栏所显示的网页地址即是该网页的 URL。网页的访问者只关心 URL 而不关心网页具体放在哪里。故而可以将一个 URL 指向新的地方 
  3. 域名,domain name。例如 www.google.com 就是一个域名。对于一个形如 https://blog.wangxuan.name/2020/03/04/where-to-host-my-blog/ 这样的 URL,其中 blog.wangxuan.name 就是域名。如果不拥有一个 URL 中的域名,那么就无法将该 URL 指向一个新的 IP 址,也就无法自由迁移自己的博文到新的地方。 
  4. 仍以本文为例,https://blog.wangxuan.name/2020/03/04/where-to-host-my-blog/ 就是本文的静态链接。有的博客喜欢使用像本文一样的日期加标题的形式,有的喜欢使用博文 ID 的形式,有的喜欢使用仅含标题的形式。如果迁入的新博客平台并不允许将博文的静态链接设置成自己想要的样式,那么便可能无法重现原来博文的 URL。 
  5. VPS,Virtual private server,虚拟专用服务器。所谓虚拟,是指用户并不真的拥有一台物理服务器,而是将一台实际的物理服务器出租给一个或多个(一般是多个)用户使用。但对于用户来说,使用感受与一台真实的物理服务器无异,所以称之为「虚拟专用」服务器。什么是物理服务器?就是一台看得见摸得着的计算机。打个比方说,如果一台接入互联网的物理服务器相当于临街的一座楼,那么 VPS 就是这个楼的临街一面有不止一个门牌号(IP 地址),你买下了其中一个有自己门牌号的门脸用来做生意,店铺里一切由你做主,水电也都是独立的。从店主的角度来说,是否拥有这座楼,对于开店本身并没有什么差异。 
  6. 当然,虚拟主机这个词也是一个中国特色的词语,并不是一个严谨的技术词汇。和前面的 VPS 的主要区别是,用户并不能获得相当于拥有一台物理服务器的使用体验。往往多人共用一个 IP 地址不说,超售而影响服务性能也是比较常见的事情。还用前面的比方,你获得的只是大楼中某个房间的「收信地址」用来做电商。但这个房间还挤着别人,你只有这个房间的一个隔断的使用权。有人给你寄信之后,大楼物业负责分拣信件给你。如果你邻居的信件特别多,也许给你的信件就会漏送。更糟糕的是,万一有邻居用了大功率电器而跳闸,你也要跟着一起倒霉。不过虚拟主机也并非全无可取,既然物业代理了信件收发和水电暖维修,如果物业服务很好,房间宽敞,用起来也可以舒心省事。 
  7. 托管型 VPS,就是你买了 VPS,但是运维工作由别人(比如说某个非常好用的工具)代理。对于不想折腾,不想碰命令行的人,这是一个好选择。当然,给你维护网站的工具是要收钱的。详细介绍见这里 
  8. IP 地址是一台计算机在互联网上的地址。自然一个 VPS 商的 IP 地址是连成一片的。封禁 IP 段相当于封掉整条街,自然上面的商户全都倒霉。 
  9. DDoS, Distributed Denial-of-service attack,分布式拒绝服务攻击。简单地说,就是发起大量的访问,使服务器无力承载而下线。对于 VPS 用户来说,比较常见的情况是被攻击后流量超出服务商的限制而被服务商下线。 
  10. 挂 BT 是使用 P2P 类下载软件下载东西的俗称。BT 一词源于最早的 P2P 下载协议 BitTorrent。现在一般说挂 BT 的话,也可以指其它协议如 eMule 所用的 ed2k 协议。使用服务器挂 BT 的话,自家的电脑就不必一直开机。 
  11. 自建同步网盘的需求主要是大陆用户。因为大陆 ISP 一般不为家庭用户提供公网 IP,且会封禁常用服务端口,难以用家用电脑架设网盘。 
  12. cPanel 是一种常见的虚拟主机管理界面。在上面可以方便地一键部署 WordPress,上传文件什么的。 
  13. CDN, Content Delivery Network,内容分发网络。打个比方说,你的仓库在北京,广州的顾客收货就会慢。CDN 的作用就是在全球各地建仓库,使得任何地方的顾客都可以从最近的仓库收货。因此 CDN 服务商会复制一份你服务器上的内容,并根据访客的位置来决定从哪个服务器提供内容。 
  14. LNMP: Linux, Nginx, MySQL, php。LAMP:Linux,Apache,MySQL,php。两个都是常见的 WordPress 运行环境 
  15. 也就是只允许 SSH pubkey 登录。这样可以降低密码被试出的风险。如果觉得不方便的话,至少要禁止 root 用户远程登录。也可以安装 fail2ban 以减少密码被试出的机会。 
  16. 感谢 atreides 贡献这个比喻 
  17. 对于没经验的用户来说,自己排查故障是如此费时间,以至于一般情况下,按教程从头重来一遍可能更省时间一点。 
  18. 这种操作方法的原理是:虽然 Blogspot 和 WordPress.com 的域名解析在大陆是不能用的,但我们可以用自己的域名绕过此限制,将自己的域名指向一个目前尚未列入封禁列表的 IP 地址。由于博客已经不再是目前封锁的重点,防火墙的 IP 黑名单更新不一定及时,故而此法有相当的可行性。但此法在形势有变时随时有可能失效。 
  19. 对于博客来说,主题可以理解为是整个网站的外观风格的一揽子解决方案。安装对应主题之后,可以在不改变博文内容的情况下整个改变站点的面貌。一些特别复杂的主题甚至可以实现电商平台之类的复杂功能。 
  20. 绝大部分服务都需要按月或按年付费,不能一次付清买断 
  21. 肉鸡,指被黑客控制的计算机。黑客可以操作被控制的计算机做各种不可告人的事情,比如说用来发动对其它网站的攻击 
  22. 挂马,被挂上木马。指网站被篡改后被用于分发恶意程序,使得访问者的计算机可能受到感染 
  23. 如前所述,Blogger 的博文链接不能自定义,只能接受。此举不利于迁入它,但从它迁出还是可以的。故而也算作「准」自主博客列入本表 
  24. 同时可以有多少个用户访问网站 

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.