GithubPages + Hexo 打造免费个人静态网页博客

本文涉及的产品
.cn 域名,1个 12个月
简介: 作为程序员为什么要写技术博客,一方面是为了养成做笔记做总结的习惯,一方面也能做些有用的知识分享,提高写作能力,其实有很多不错的博客平台都可以用,比如在掘金发布博客文章,但是如何在不需要域名空间和博客程序下,低成本的拥有属于自己的博客网站呢?
前言:作为程序员为什么要写技术博客,一方面是为了养成做笔记做总结的习惯,一方面也能做些有用的知识分享,提高写作能力,其实有很多不错的博客平台都可以用,比如在掘金发布博客文章,但是如何在不需要域名空间和博客程序下,低成本的拥有属于自己的博客网站呢?

我后来发现很多大牛的个人博客都在用hexo,折腾了一下觉得简单又实用,markdown编写git发布,静态网页速度快,稳定性高,对于博客程序来说这一切足够了。听说还可以集成vue、angular等。

1. 准备工作

  • 必要环境及工具的下载:
  1. Node.js 安装后也会安装好 npm 包管理工具。
  2. Git 用于提交代码的工具,mac下安装了xcode则忽略这步。
  3. 需要一个Github账号,使用它提供的 Pages 功能就可以拥有一个静态网站空间,而且是免费的。国内的 Coding 也能做到同样的事,这里我还是选择github作为例子,原理都一样按需选择。
  • 申请个自己的域名(非必须)

2. 安装HEXO博客程序

  • mac下打开终端,如果嫌cd命令找目录麻烦,可以打开finder,点击左上角苹果图标旁边的Finder->服务->服务偏好设置->勾选新建位于文件夹位置的终端窗口,以后便可以在目录文件夹右键选择服务->...位置的终端窗口
  • windows在磁盘随便一个目录空白处右键选择在此处打开GitBash (使用cmd也可以,不推荐)
  • 在终端执行以下命令安装hexo (以下所有命令在windows下都不需要加sudo)

sudo npm install -g hexo

3. 初始化博客

  • 创建一个文件夹用于存放博客资源目录,在该目录下打开终端执行:hexo init
  • 第一次初始化需要稍作等待,完成后再执行:hexo g
  • 该命令作用是构建文章页面,就是生成静态网页,最后执行:hexo s

此时自动启动本地测试服务器,浏览器访问 http://localhost:4000 即可查看初始化好的博客。

初始化博客可能报错:ERROR Plugin load failed: hexo-server
解决方法:执行 sudo npm install hexo-server

4. 部署博客

经过以上步骤,我们已经可以将博客程序跑起来了,非常简单。接下来就要将它与Pages关联。

登录github并创建一个repository,点击“New repository”创建存放博客的仓库,注意仓库名必须为xxx(自定义前缀).github.io,这个也是你博客默认的访问地址。

进入博客资源目录(即刚刚初始化的目录),打开根目录的_config.yml文件,在末尾添加:

deploy:
  type: git
  repository: https://github.com/xxx/xxx.github.io.git
  branch: master

仓库地址为前面创建的github仓库地址

  • 接着在终端执行以下命令:npm install hexo-deployer-git --save
  • cd到博客目录执行:hexo d

你会发现博客已经部署到giuhub仓库中,可以通过外网访问了。

5. 开始写博客

  1. 安装一个编写md文件的工具,例如我使用的是MacDown
  2. cd到博客目录执行hexo new "postName" 创建文章。
  3. 博客目录下的source/_posts找到你创建的文章,打开直接编写即可。
  4. hexo中文文档

6. 发布你的博客

每次编写博客的步骤:

  1. 本地写好博客
  2. 打开终端,cd到博客目录,执行 hexo clean 清空缓存
  3. 执行 hexo g 构建文章页面
  4. 执行 hexo s 本地预览整个站点
  5. 执行 hexo d 发布到Pages更新线上博客

7. 博客绑定自己的域名

域名解析CNAME记录到你仓库的默认域名,创建一个文本,写上你解析的域名,放在仓库根目录即可。

  • 重新生成网页文件会把 CNAME 文件覆盖掉,需要直接把 CNAME 文件添加到 source 文件夹里,这样每次推的时候就不用担心仓库里的 CNAME 文件被覆盖掉了。
  • 仓库设置中出现Domain's DNS record could not be retrieved.提示说明CNAME文件出错,检查该文件域名是否拼写错误,注意不要加协议前缀(如http)。
相关文章
|
网络协议 Windows
解决GitHub Pages制作的个人博客无法访问的问题
最近一段时间应该有很多小伙伴发现自己辛苦做的个人博客无法访问了吧。
|
2月前
|
JSON 缓存 JavaScript
使用 jsDelivr 免费加速 GitHub Pages 博客的静态资源(二)
使用 jsDelivr 加速 GitHub Pages 的图片资源和动态编译的 JSON 资源。
37 2
|
存储 程序员
30分钟使用Docsify+Github Pages搭建个人博客
30分钟使用Docsify+Github Pages搭建个人博客
332 0
30分钟使用Docsify+Github Pages搭建个人博客
|
Windows
Hexo+GithubPages免费搭建个人博客网站(上)
Hexo+GithubPages免费搭建个人博客网站
Hexo+GithubPages免费搭建个人博客网站(下)
Hexo+GithubPages免费搭建个人博客网站(下)
|
运维 JavaScript 大数据
Hexo + Gitee Pages 搭建个人博客
Hexo + Gitee Pages 搭建个人博客
Hexo + Gitee Pages 搭建个人博客
|
JavaScript 前端开发 Shell
一篇带你用 VuePress + Github Pages 搭建博客
最近完成了 TypeScript 最新官方文档 Hanbook 的翻译,一共十四篇,堪称国内的最好 TypeScript4 入门教程之一。为了方便大家阅读,我用 VuePress + Github Pages 搭建了博客。
1019 1
一篇带你用 VuePress + Github Pages 搭建博客
|
JavaScript 网络安全 开发工具
避坑98%的Hexo博客安装以及部署发布到Gitee Pages全套服务
避坑98%的Hexo博客安装以及部署发布到Gitee Pages全套服务
避坑98%的Hexo博客安装以及部署发布到Gitee Pages全套服务
|
安全 前端开发 程序员
利用 Github Pages 和 Hugo 快速搭建免费的个人网站
人人都可以拥有自己的个人网站。今天我就和大家分享一种不花钱、不要独立服务器,也能搞起个人网站的方法。
1191 0
利用 Github Pages 和 Hugo 快速搭建免费的个人网站
|
网络安全 开发工具 数据安全/隐私保护
Hexo+Gitee Pages 搭建个人静态博客
Hexo+Gitee Pages 搭建个人静态博客
301 0
Hexo+Gitee Pages 搭建个人静态博客