华帅
我们的目标是星辰大海
博客迁移2019
建站程序
之前一直是使用WordPress,大家都说好,我用了十来年,完全没有感觉到好。先吐槽一下,WordPress会被黑、搭建要求php+mysql、备份需要备份网站数据和数据库、能找到的免费主题丑……
个人觉得本地生成静态网站再发布才是王道,目前支持生成静态html的程序很多,可以部署在github、Netlify、heroku、zeit.co、OpenShift免费平台,或者各种云的oss上,如果还不够再加个cdn,小流量的基本上没啥成本。 之前试用了hexo,大家也是吹的很牛逼,反正我研究了几天还是觉得很复杂,无意中遇到了Ink (官方域名不知道是被卖了还是因为啥,这里给github地址),这个是基于go做的,看着好久没更新了,但是目前功能够用,最关键的是简单,看文档半小时就基本可以完成部署了,hexo看半小时就能把东西部署完成是不可能的。
网站架构
网站静态文件放在Github仓库,前端使用Netlify。
为什么不直接用github pages? 不支持IPv6,屏蔽部分搜索引擎
这一次迁移无意中发现了个黑科技,网站数据部署在类似Github的Git仓库上,网站可以托管在其他地方,当数据有更新时,Git仓库可以通过webhook通知第三方更新数据。这个基本上就比较完美了,因为通过ftp或者一些服务器提供的工具上传是很不方便的,大量小文件通过ftp传送到国外服务器是不太可能传输成功的。
GitHub使用的是BGP anycast技术做的CDN,这种技术比通过智能DNS实现分流要好的多(例如终端配置8.8.8.8的DNS,智能解析是没法判断终端的运营商的) 但是这个也是看运营商脸色吃饭的,在国内用CDN的目的一个是加速,还有一个就是省钱(四五线小城市的带宽白菜价,在当地访问也没啥质量问题)。国内BGP带宽是天价,大的互联网公司只有最核心的业务才使用。Netlify是使用的智能DNS来实现的CDN,不过支持IPv6。 GitHub pages实际上就是用4个地址在全球节点上通过BGP广播 185.199.111.153 185.199.109.153 185.199.110.153 185.199.108.153