Hexo建站小结
小记(寄)
在此记录一下搭建网站的过程,也算是对连日的工作有一个交代:本来是免部署的静态网站,一时心动买了域名,却被告知要备案;去备案却发现备案需要服务器,于是在阿里云斥巨资吃新人优惠租下了这台小水管服务器(5M带宽,梦回2010年),申请SSL证书,配置反向代理 …… 我发现我算是进了坑了,而且越来越深,阿里云的优惠只有一年,我肯定要跑路的,跑路之前先清点一下家当总是好的,也方便下次系统复盘呗。
依赖环境安装
到手先apt更新一波:
sh
1 | apt-get update |
安装所需环境,第一步安装git:
sh
1 | sudo apt-get install git-core |
完成后,安装node.js:
sh
1 | #官网提供方法(最新版) |
完成上面的操作后记得试试
node -v
以及npm -v
验证版本,测试是否安装成功,若提示报错记得寻找解决方案。
安装Hexo
如果node.js已经安装完成,那么就可以进行下一步,安装Hexo:
sh
1 | npm install -g hexo-cli |
完成后,进入你想要部署服务器的文件夹的上一级,输入:
sh
1 | #请将<folder>改为你想部署的文件夹名字 |
此时服务器会部署在名为
<folder>
的文件夹中,此时可以:sh
1 | cd <folder> |
进入该服务器根目录,在此根目录完成相应依赖的安装:
sh
1 | npm install |
此时可以看到根目录< folder> 下所生成的文件,修改其中的
_config.yml
,此文件主要用于对网站信息的配置,修改时可以参考Hexo的官方文档。到这里就可以准备启动服务器了:
sh
1 | #生成静态文件 |
如果在运行中没有任何报错的话,服务器此时应该会默认部署在
http://localhost:4000/
,通过访问情况来判断你的服务器是否搭建成功,到这里服务器就已经成功搭建完成。
配置Git仓库
使用git前进行配置(已配置可以跳过):
sh
1 | #请将yourname修改为你的id |
生成密钥:
sh
1 | cd ~/.ssh |
按下三次回车,文件会自动保存在根目录
<~/.ssh>
文件夹中,打开其中的id_rsa文件即可得到ssh密钥:sh
1 | #进入根目录 |
复制你ssh密钥后,进入你的
Github
,打开setting
位于accesss
项下的SSH and GPG keys
选择new ssh keys
-> add ssh keys
,测试是否能连接到github:sh
1 | ssh -T git@github.com |
测试成功会显示
You've successfully
字样的提示,到这里就成功了。
Github部署
首先,建立建立名为 <你的GitHub用户名>
.github.io 的储存库(对照Hexo官方文档),如果你希望你的博客域名为<你的GitHub用户名>.github.io
。
若不对存储库名进行规范,则你的域名则会变为<你的GitHub用户名>.github.io/<repository的名字>
,应注意。
完成后,对Hexo部署的根目录下的_config.yml
进行修改如下:
yml
1 | # Deployment |
添加hexo-deployer-git插件
sh
1 | npm install hexo-deployer-git --save |
此时可以重新部署服务器
sh
1 | hexo d |
服务器生成的静态网页将会被更新至Github库中,你也可以进行访问,地址为
<你的GitHub用户名>.github.io
。
博客内容编辑与发布
往后,每次生成新的博客页面只需要使用命令:
sh
1 | #可以在命令中指定文章的布局(layout), |
生成新的页面后前往
hexo部署目录
下的source目录,通过打开对应的布局(layout)目录
继续编写你刚刚创建的网页内容。其文件名为<title>.md
,通过markdown语法来书写。每次书写完成后,在hexo部署目录
使用:sh
1 | hexo g |
这样,服务器会根据source目录下已有的内容生成新的静态网页,生成网页后记得部署,访问一下看看效果:
sh
1 | hexo s |
此时服务器依旧会部署在
http://localhost:4000/
,根据terminal窗口的返回信息你也应该能够直接访问了。在访问后觉得还不错?那就部署它:sh
1 | hexo d |
运行此命令后,前面生成的静态网页文件会被上传至你github账号下的名为
<你的GitHub用户名>.github.io
的储存库中,该储存库中的静态网页可以通过https://<你的GitHub用户名>.github.io
来访问,这样,学习到什么就可以更新至博客啦。本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Mepha的小站!
评论