Hexo折腾大赏
本文最后更新于:10 个月前
Hexo 折腾大赏
本人有服务器若干,Github账户一个,CloudFlare账户一个。选择折腾Hexo纯粹是闲的
博客网站有动态和静态两大类,其中各有各的特点和问题。
在我看来,静态博客最大的问题就是没有后台。网站管理难度直线上升。当然静态博客也有好处,生成的是HTML文件,页面加载速度快,对服务器要求较低。或者可以干脆选择Pages托管,无论是CloudFlare还是Github都有免费的Pages托管服务。
先来说结论:技术小白强烈不推荐Hexo等部署难度较大的静态博客,无论是WordPress还是Typecho,在部署难度上来说都比静态博客要低不少。
部署Hexo
Hexo.io上提供了部署教程。但是…… 我还是再水点字数好了。
在Windos平台上Hexo的运行仰赖于两个东西——Node.JS和Git。
两者在安装的时候都是按着默认配置来就可以了。除了Git里面有一个东西要改动。
1 |
|
这里要手动改成Use Windows's default conlse window
。
全部安装完成以后,找一个合适的地方新建一个空的文件夹。
打开文件夹,右键找到Git Bash Here
。这里会弹出一个命令行窗口。
请各位电脑苦手注意,Hexo的很多事情都仰仗于这一个小小的命令行窗口来完成。没有能力或者信心的,请自觉转去动态博客。
在窗口中输入如下命令
1 |
|
等待安装完毕。安装完毕后可以用Hexo -v
来核验是否安装完成。
下一步,初始化网站。
1 |
|
接下来输入Hexo g
(渲染页面)和Hexo s
(启动服务器)。
到这里,如果可以在浏览器中输入localhost:4000
访问的话,那就代表Hexo在本地搭建完成了。
发布你的网站
网站做出来就是要让人看的。这里我提供CloudFlare的Pages托管部署指导。
什么?部署到服务器?等我研究完了再说吧
CloudFlare的网页托管服务需要依靠Github的仓库来完成。别问我为啥不用Githubpages,因为那玩意访问速度感人。
首先登录Github,然后新建一个Repositories。默认选项即可。
接下来的操作略微有一点麻烦。所以我还是先解释一下这套系统的逻辑比较好。
CloudFlare Pages是一个静态网页托管服务,静态网页的资源读取自绑定的Github仓库。那么我们只需要将网站同步到Github仓库,CloudFlare Pages就可以自动读取并且发布。
下面要做的事情是把建立一个“通道”,让我们可以把在本地渲染好的网页同步到Github的仓库。
还是在那个命令行窗口里面,依次执行如下的命令。
1 |
|
1 |
|
生成SSH密钥↓
1 |
|
生成SSH密钥的时候会跳出来几个选项,全部回车默认即可。
进入Github的设置页面,找到SSH and GPG keys
这个选项卡。点击New SSH key
这个选项。
Title这里不建议瞎起名字,起一个便于理解的,比如博客
。
下面的Key
自然就是要填写密钥。在命令行窗口执行如下命令,查看之前生成的密钥。
1 |
|
输入如下命令,如果出现yes/no的选项,输入yes。如果可以看到你的Github用户名即代表“通道”构建成功。
1 |
|
CloudFlare Pages 现在处于公测阶段(Public Beta),任何人都可以使用,只需要注册一个CloudFlare账户。
这里需要注意,如果Github仓库没有文件,就无法产生Branches。解决问题的方法也很简单,随便上传一个文件即可(添加一个README.md即可)。
后面的选择None即可,无需过多配置。
请注意,CloudFlare Pages对每个月的构建次数是有限制的,免费计划一个月有500次,而每次部署页面都会消耗构建次数,且免费版一次只能构建一个文件。
再次回到命令行窗口
依次输入渲染命令和推送命令
1 |
|
1 |
|
等待CloudFlare Pages 完成构建,在浏览器输入分配给你的域名,就可以在互联网上看到你的博客了。
动机
我很想说说这次折腾的动机。虽然没花一分钱,但是还是花费了我大半天的时间来调试和写下这篇文章。
之前翻到过sukk大佬的博客。里面有一篇讲的是如何将网站直接部署到CF上面,由此可以节省CDN的回源时间。当时就觉得这个想法太酷了。但是自己是个技术小白,除了能折腾之外没啥特长。所以看着满篇的代码就放弃了。直到后来CloudFlare推出了自家的Pages业务,才算是有了机会实地体验一下。