静态博客搭建指南1.0
方案选择
-
Netlify
一个静态网页生成器,可以快速地构建和发布个人或团队的网站 -
hexo
Hexo 是一个快速、简洁且高效的静态博客框架,它基于 Node.js 运行,可以将我们撰写的 Markdown 文档解析渲染成静态的 HTML 网页 -
GitHub Pages
GitHub Pages 是由 GitHub 官方提供的一种免费的静态站点托管服务,让我们可以在 GitHub 仓库里托管和发布自己的静态网站页面 -
Hexo + GitHub 文章发布原理
在本地撰写 Markdown 格式文章后,通过 Hexo 解析文档,渲染生成具有主题样式的 HTML 静态网页,再推送到 GitHub 上完成博文的发布。 -
Ruby
一种面向对象、指令式、函数式、动态的通用编程语言 -
Gem
Gem 是 Ruby 中的包,其中包含包信息,以及用于安装的文件 -
Gemfile
一种描述 Ruby 程序的 gem 依赖关系的格式 -
最后采用了 hexo+github pages 的方案
第一次尝试
[!note] 熟悉了基本流程,但是觉得生成部署有点麻烦,后面发现有 github action 可以自动部署(2.0),折腾了两天,暂时没问题
参考教程
本地配置
-
安装hexo
- 创建一个文件夹 MyBlog,用来存放自己的博客文件,然后 cd 到这个文件夹下(或者在这个文件夹下直接右键 git bash 打开)。
- 定位到该目录下,输入
npm install -g hexo-cli
安装 Hexo。可能会有几个报错,无视它就行。 - 安装完
hexo -v
验证安装成功没
-
初始化
- 在主题根目录
hexo init
- 初始化失败注意根目录的位置(在三层?)
- 安装必备组件
npm install
这时指定目录会有几个文件夹
- 在主题根目录
-
预览
1 |
|
连接 github 到本地
- 在 MyBlog 中右键打开 git bash,第一次使用 git 后需要将用户名和邮箱进行初始化
1 |
|
- 检查
1 |
|
- ssh
ssh,简单来讲,就是一个秘钥,其中,id_rsa 是你这台电脑的私人秘钥,不能给别人看的,id_rsa. pub 是公共秘钥,可以随便给别人看。把这个公钥放在 GitHub 上,这样当你链接 GitHub 自己的账户时,它就会根据公钥匹配你的私钥,当能够相互匹配时,才能够顺利的通过 git 上传你的文件到 GitHub 上。 - 创建 SSH
1 |
|
- 检验是否创建成功
1 |
|
将 hexo 部署到 github
这一步,我们就可以将 hexo 和 GitHub 关联起来,也就是将 hexo 生成的文章部署到 GitHub 上,打开博客根目录下的_config. yml 文件,这是博客的配置文件,在这里你可以修改与博客配置相关的各种信息。修改最后一行的配置:
1 |
|
-
注意空格
-
repository 修改为你自己的 github 项目地址即可就是部署时,告诉工具,将生成网页通过 git 方式上传到你对应的链接仓库中。
-
先安装部署的命令
1 |
|
- 部署
1 |
|
写文章、发布
- 先安装拓展
1 |
|
- 新建博客
1 |
|
-
然后在
source\ _posts
目录可以看到. md 文件 -
实时预览和发布
编写完 markdown 文件后,在根目录用hexo g
生成静态网页,hexo s
本地预览
如果没有问题可以hexo d
上次到github
本地预览
解决方案
git clone 失败
- 取消 http 代理
1 |
|
- 取消 https 代理
1 |
|
error: key does not contain variable name: user.
- 转为手动输入
css 渲染失败
- 文件名内有非法字符 # ,换目录,目录最好是
x:/xx/xx
- 新建目录
x:/x
也遇到了问题
- 新建目录
- ERROR Asset render failed: css/style.css · Issue
打开网页是空白,警告:No layout
- 可能是主题配置的问题
- 存在两个主题的
.yml
文件
hexo s 访问失败, hexo d 报错
1 |
|
- 更改 DNS 为 google 后还是无法本地预览,但发布成功了