How to Make Your Own Blog?

这篇文章是来讲述一下,如何创建一个属于自己的(较为简单的)博客。
也是自己创建博客过程中的经历和感想。

首先说明,我的电脑是windows的,其次,在你遇到任何本篇博客无法解决的事情,你可以尝试参考开发文档
好的,我们现在开始:

part0:什么是博客(blog):#

就我的理解而言,博客是一个用来展示自己生活/记录学习经历/分享有用知识的平台,里面包含了很多文章。虽然有点像朋友圈,但是往往会更加有条理。

part1:我实现博客的原理:#

我的博客是以静态网页的形式存在的。所谓静态网页,就是说,这些内容是已经提前写好的了,就好像正常的网页一样,你发出申请(点击链接)的时候,服务端返回给你有关这个网页的资源,通过browser解析,然后就可以显示出来博客的界面了。因此我们可以撰写这样的一个网站,然后托管在服务器上,我们要做的只是更新网站的具体内容。

当然,这么做对于缺少web基本技术的同学来说还是太过于抽象。幸好这样的需求不止我们有,我们的前人已经做出了不少工作,因而我们只需要用轮子即可。

这样的轮子,我们称之为框架。常见的框架有很多,比如这个博客所用的hexo,还有Gatsby等等。这些框架存在的意义,就是简化了接口,使得我们能够更加简便的完成自己的工作。

鉴于我使用的是hexo,就讲讲这个

part2:初识hexo#

gpt是这么说的:

hexo 是一款基于node.js开发的静态博客框架,它使用 Markdown(或其他渲染引擎)解析文章,通过几条命令即可生成静态网页并发布,非常适合开发者、博客作者和技术爱好者使用。

这么看起来还是挺绕的,让我来breakdown一下:

  1. hexo 是一款基于node.js开发的静态博客框架:
    • 这句话是说:如果你想使用hexo,你需要下载node.js作为其运行的环境。对于node.js,暂时不需要知道更多的细节。我之后也许会写点有关于这个东西的博客
  2. 它使用 Markdown(或其他渲染引擎)解析文章:
    • 这是hexo的一大优势,md是大家喜闻乐见的写文章的方式,这句话就是说,在hexo中写博客,你只需要写md文档,hexo会根据你的文件来进行解析,生成能够在网络上展示的文章。
  3. 通过几条命令即可生成静态网页并发布,非常适合开发者、博客作者和技术爱好者使用:
    • 这句话是说,hexo生成静态网页只需要输入一些命令即可完成静态网页的生成和发布。

有了以上概念,我们就可以开始着手建立自己的博客了。

part3: hexo怎么用:#

1. 框架准备:#

首先确保你已经下载好了node.js,并且将命令所在的文件夹添加到环境变量之中。

在你的cmd中的输入

1
node --version

来检测是否已经配置好环境。

node.js下的npm包管理系统为我们提供了简便的文件管理操作,一般来说,安装好了node.js后npm也安装好了。

然后,我们输入以下命令来安装hexo

1
npm install -g hexo-cli

安装好了之后,我们需要一个新的文件夹来存放自己的博客。hexo只是一个工具,还是需要建立在文件系统之上的。

使用如下命令来创建自己的博客文件夹:

1
2
mkdir myblog
cd myblog

然后进行hexo的初始化,这会在当前文件夹建立hexo框架:

1
2
hexo init
npm install

后面的npm install是用来安装hexo依赖的,这一点我不是很清楚

做完以上内容后,我们的网站框架就已经有了,但是我们还需要做出一些个性化的操作:

2. 修改网站基本内容:#

在这一步之前,我们先来做一点其他的准备工作。

1. 找个主题(theme):#

主题决定了你的博客的界面和结构,选取一个好的主题会为你的博客增添不少色彩。

然而我比较懒,于是只用了给定的默认主题landscape

一般来说hexo会自动安装好这个包的,如果这个主题包没有下载,那么使用如下命令:

1
git clone https://github.com/hexojs/hexo-theme-landscape.git themes/landscape

注意,这个命令使用了git,如果你的电脑没有git,请安装。如果你想对git有一个初步的理解,可以我的参照这篇博客

2. 找个家:#

有了这个主题之后,我们还需要为我们的网站找一个安身立命之所。

我觉得,hexo实现博客的原理是准备一个静态的网页供浏览,如果我们不找托管平台的话,我们就需要自己准备服务器,接入互联网,这是比较麻烦的。

这里我使用的是GitHub pages用来放置自己的网站。我们需要的只是一个github账户。

在你的github账户上创建一个新的库,库的名称为:你的github账户名称.github.io,例如我的github账户名称是Hebown,那么这个库就叫Hebown.github.io

3. 改文件:#

创建完成之后,我们就可以修改_config.yml文件了。

修改网站的基本内容,只需要打开_config.yml文件进行编写,这里由于我已经把vscode的exe文件所在的文件夹放到了环境变量之中,我只需要使用

1
code _config.yml

就可以使用vscode打开这个文件进行编写。

然后,在你的文件中找到Site,url,deploy,我们需要修改的内容是这些:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# Site
title: Hebown's small world # 这里编写你的网站主标题
subtitle: 'tech and life' # 这里编写你的网站副标题
description: "This is Hebown's small world, where he will put his thoughts and experiences down." # 这里的内容为浏览器提供你的网站的介绍。
keywords: Hexo, blog, tech, life # 这里是你的博客的关键字。
author: Hebown # 这是作者名称
language: zh-CN # 这里是你的博客使用的语言的类型,如果你想使用英语,改为en;如果你想混用中英,就使用zh-CN,en
timezone: '' # 这个无所谓。

# url
url: https://hebown.github.io # 这里填写你的博客的网址

# deploy
deploy:
type: git
repo: https://github.com/Hebown/Hebown.github.io.git # 这里修改成你的库所在地址
branch: main
message: blog_change

完成之后,我们就可以生成网站的静态文件,上传到github库了。

3. 系列操作:#

在你的博客所在文件夹中,使用

1
2
3
hexo clean
hexo generate
hexo deploy

来清除之前生成的静态页面、生成新的静态页面、将新的静态页面部署到github pages上。

如果想访问你的网页,即可以使用之前设置好的url,也可以在本地使用

1
hexo server

在本机创建一个端口服务,用来指向你的网站,对外的域名一般是localhost:4000,或者阅读你的cmd返回给你的信息。你可以进行修改,然后在这个本地上的网站去检查你的修改,这样比deploy要方便和省事。

4. 后面没了:#

建立网站的过程到这里就结束了,如果你有任何问题,欢迎在评论区留言。

7/11更改:#

更新了这篇博客作为对hexo框架使用的更多理解的记录。如果没有跳转说明我还没更()