上学期的时候,请教了某学长在 Windows 上搭建了一个文件分享的网站。但是现在换了 MacOS,Filezilla 登录不上原有的网站。所以这个暑假打算利用 github 做一个简易的博客记录生活以及代码学习。
Hexo的下载与安装
Hexo 是一个基于 Node.js 生成的快速、简洁且高效的静态博客框架。在搭建 Hexo 时,如果有问题,可以选择删掉博客所在的文件夹——这可比重新找问题所在快多了😂
安装Node.js
在 Node.js官网 上下载稳定版本的 Node.js,并直接安装。我的 Mac 用brew install node
会出现一些无法正常显示版本的问题。在终端输入node -v
和npm -v
确定安装成功并查看版本。
安装Hexo
在全局安装Hexo,在终端输入:
1 | npm install -g hexo-cli |
即可安装hexo。利用hexo -v
进行版本检查。
国内npm速度慢的情况
由于无法“科学”上网的情况,我们需要利用 npm 下载 cnpm 帮助我们快速获取资源。
1 | npm install -g cnpm --registry=https://registry.npm.taobao.org |
个人感觉 cnpm 的下载代码更加高效。同样的在全局安装 Hexo:
1 | cnpm -install -g hexo-cli |
Hexo的初始化与连接
Hexo初始化
选中你期望写博客的文件夹。如果没有,可以利用mkdir 文件名
新建所需的文件夹。从终端进入文件夹,输入:
1 | hexo init #初始化 |
Hexo 会自动下载,之后我们要在 github 上建立一个放置网站的仓库。
建立github仓库
如图所示,博客的仓库名称是你的 github 名称。
hexo与github仓库的连接
初始化之后,可以在你期望写博客的文件夹找到文件 _config.yml 文件。可以直接打开,也可以在终端通过vim _config.yml
指令打开编辑。将文件拉到最后,修改 # Deployment 部分如下:
1 | # Deployment |
如果用指令编辑,编辑后按esc+:wq+Enter
强制退出。之后可以利用 Hexo 的常用指令进行编辑了。
首先利用hexo s
指令启动本地服务器,之后点击http://localhost:4000/进行本地化的查看。按crtl+c
退出本地服务器。之后利用hexo g
指令生成网站静态文件到默认设置的 public 文件夹。最后利用hexo d
部署到设定的仓库。通过访问https://yourgithubname.github.io就可以访问你的博客了。
Hexo的部分常用指令
1 | hexo n "文章名" #== hexo new "文章名" == hexo new post "文章名" |
有时hexo d
无法成功发送到 github 库,使用hexo clean
之后再发送有奇效。
Hexo的部分拓展功能
更换主题
在 github 上搜索 hexo-theme,能搜到上千条内容。选中自己喜欢的主题并且下载到你期望写博客的文件夹。在 _config.yml 文件中找到 theme,将初始化的主题 landscape 替换成你想要的即可。我的博客采用的是这个模版,推荐一下QvQ。
常见问题
友链中有关建设网站的博客
这就是一个无限套娃的过程 (逃)。Anyway,里面的干货很多。
SSH不支持问题
[9月13日更新]命令行报错内容:
1 | remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. |
Github 从 2021 年 8 月 13 日不再支持用户名和密码的验证方式,要转而使用 personal access token。
在 github 进入 settings - Developer settings - Personal access tokens,新建一个 token,在hero d
输入邮箱的位置填入生成的 token 密钥,即可解决。
hexo d指令连接github失败
[9月13日更新]命令行报错内容:
1 | Failed to connect to github.com port 443:connection timed out |
我这里是因为没有好好关代理服务器造成的。
解决方法:
1 | git config --global http.proxy http://127.0.0.1:1080 |
取消全局代理:
1 | git config --global --unset http.proxy |
hexo无法显示$\LaTeX$公式
[9月13日更新]可以通过安装 hexo-math 插件来解决这一问题,该插件支持 MathJax 和 KaTeX 来实现$\LaTeX$排版系统。进入博客目录,安装 hexo-math:
1 | npm install hexo-math --save |
卸载默认 markdown 渲染引擎 hexo-renderer-marked;若不卸载,会和新的引擎发生冲突。安装新引擎 hexo-renderer-kramed。
1 | npm uninstall hexo-renderer-marked --save |
之后需要修改 kramed 配置来解决语意冲突。打开文件: /blog/node_modules\kramed\lib\rules\inline.js,修改第 11 行和第 20 行。
1 | escape: /^\\([`*\[\]()#$+\-.!_>])/, //11 行 |
之后回到博客根目录打开 _config.yml 文件,在末尾增加对 MathJax 的支持。
1 | # MathJax |
经过以上所有设置后,重启 Hexo ,让各种设置生效。参考链接:[1]博客-ninja