教程:无成本、零基础搭建博客
本文最后更新于:1 小时前
前言
本文是为《网络“根据地”》而写的博客搭建教程,目的是为了帮助左派同志建立自己的宣传平台,也适用于普通网友。
最终可达成的结果为:获得一个使用 Hexo 框架、由 GitHub Pages 托管的免费博客。
域名
搭建网站需要域名和服务器,要免费获得这两项,目前较好的方式是使用 GitHub Pages 托管博客。
GitHub 文档中关于 GitHub Pages 有如下描述:
You can use GitHub Pages to showcase some open source projects, host a blog, or even share your résumé.
大意是:您可以使用 GitHub Pages 展示一些开源项目、托管博客,甚至分享您的简历。
GitHub
警告
GitHub 用户名将成为域名的一部分,请谨慎设置。
如果对 GitHub Pages 域名不满意,可以将此默认域名指向自己拥有的自定义域名。
- 进入 GitHub 官网。
- 点击右上角 Sign up 注册 GitHub 账号。
- 登录后,在任何页面的右上角,使用 + 下拉菜单选择 New repository(新建仓库)。
- 输入
username.github.io
作为存储库名称。替换username
为您的 GitHub 用户名。例如,如果您的用户名是c1921
,则存储库名称应该是c1921.github.io
。
自定义域名
自定义域名非必要项,如果并未拥有自定义域名,也没有购买的意向,则跳过本步骤。
什么是域名
网域名称(英语:Domain Name,简称:Domain),简称域名、网域,是由一串用点分隔的字符组成的互联网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位。域名可以说是一个IP地址的代称,目的是为了便于记忆后者。例如,wikipedia.org是一个域名。人们可以直接访问wikipedia.org来代替IP地址,然后域名系统(DNS)就会将它转化成便于机器识别的IP地址。这样,人们只需要记忆wikipedia.org这一串带有特殊含义的字符,而不需要记忆没有含义的数字。
域名的核心是域名系统(英语:Domain Name System,缩写:DNS),域名系统中的任何名称都是域名。在域名系统的层次结构中,各种域名都隶属于域名系统根域的下级。域名的第一级是顶级域,它包括通用顶级域,例如.com、.net和.org;以及国家和地区顶级域,例如.us、.cn和.tk。顶级域名下一层是二级域名,一级一级地往下。现在,还有一些新兴的中文域名,例如.在线等。这些域名向人们提供注册服务,人们可以用它创建公开的互联网资源或运行网站。顶级域名的管理服务由对应的域名注册管理机构(域名注册局)负责,注册服务通常由域名注册商负责。
截止2019年,已有超过7.41亿个域名被登记注册。
购买域名
如有需要,通过相关平台购买,这里暂且不表。
配置自定义域名
Hexo
至此,我们已经获得了一个域名(即仓库名 username.github.io
),并将其托管在 GitHub Pages ,你可以通过在浏览器输入这个域名来访问网站。不过目前为止它还没有任何内容,所以我们需要使用 Hexo 来填充它。
安装
安装编辑器
建议安装 Visual Studio Code。
安装 Git 和 Node.js
下载并安装:
安装 Hexo
在任意一文件夹内空白处单击右键,(如果是 Windows 11 系统点击“选择更多选项”后方能继续)选择 Git Bush Here,在弹出的命令处理器中输入以下命令:
本页面支持直接复制代码,请点击代码块右上角 Copy
。
在命令处理器中粘贴请右键选择 Paste 。
安装 Hexo
1
npm install -g hexo-cli -g
安装 Hexo 自动部署发布工具
1
npm install hexo-deployer-git --save
配置 Hexo
SSH
检查 SSH,输入下方命令
1
ssh
生成 SSH,输入下方命令
1
ssh-keygen -t rsa -C "GitHub 注册邮箱"
敲击 4 次回车
在 C:\用户名\ .ssh 文件夹内打开 id_rsa.pub,将其内容全选复制
打开 GitHub ,进入用户设置中的 SSH and GPG keys,点击 New SSH key
- Title 随意输入
- 在 Key 栏中粘贴 id_rsa.pub 中的内容
- 点击 Add SSH key
回到 Git,检查 SSH 是否绑定成功
1
ssh -T git@github.com
输入 yes
生成本地内容
选择将要生成博客的文件夹,右键选择 Git Bush Here 。
初始化 Hexo
1 |
|
显示以下内容即为成功。
1 |
|
修改配置
打开 VSC ,点击文件\打开文件夹,选择博客根目录,在左侧栏中选择根目录下的 _config.yml 文件,按你的需求进行编辑,以我的配置为例:
警告
选项的冒号后必须有一个空格才能填写内容。
警告
必须将结尾的 deploy
替换为:
1 |
|
注意将 github 用户名
替换为自己的用户名。
1 |
|
写作
你可以执行下列命令来创建一篇新文章。
1 |
|
执行这个命令,将会在 .\source\ _posts 下生成一个以你输入的 title 为标题的 Markdown 文件(所以也可以直接在此文件夹里新建.md
文件)。
现在,你就可以在这个 Markdown 文件中写作了。
Markdown
Markdown 是一种轻量级的标记语言,可用于在纯文本文档中添加格式化元素。Markdown 由 John Gruber 于 2004 年创建,如今已成为世界上最受欢迎的标记语言之一。
使用 Markdown 与使用 WYSIWYG 编辑器不同。在 Microsoft Word 之类的应用程序中,单击按钮以设置单词和短语的格式,并且,更改立即可见。而 Markdown 与此不同,当你创建 Markdown 格式的文件时,可以在文本中添加 Markdown 语法,以指示哪些单词和短语看起来应该有所不同。
例如,要将一个短语表示为标题的话,只须在短语前面添加一个井号即可(例如,
# Heading One
)。或者要加粗一个短语的话,只须在短语前后各加两个星号即可(例如,**this text is bold**
)。可能需要一段时间你才能习惯文本中的 Markdown 语法,尤其是如果你已习惯了所见即所得的应用程序的话。
详细教程请看:Markdown 指南中文版
Front-matter
Front-matter 非必要项,但强烈建议添加。
Front-matter 是文件最上方以 ---
分隔的区域,用于指定个别文件的变量,举例来说:
1 |
|
警告
Front-matter 必须在文件的最上方,上下以 ---
分隔,并在下面的 ---
后空一行再进行写作。
更多参数请查看:https://hexo.io/zh-cn/docs/front-matter
部署
现在,我们已经写完了博客内容,输入以下指令,生成静态文件。
1 |
|
在部署之前,我们可以先输入以下指令在本地服务器查看网站的效果。
1 |
|
在浏览器中输入 http://localhost:4000 ,进入本地服务器。
在某些情况(尤其是更换主题后),如果发现对站点的更改无论如何也不生效,输入以下指令清除缓存文件和静态文件。
1 |
|
然后重新生成静态文件
如果之前使用 hexo s
开启了服务器,那么输入新的指令之前,记得按 Ctrl+C
关闭服务器。
检查确定无误后,我们使用以下指令部署。
1 |
|
如果显示以下文字则部署成功。
1 |
|
由于 GitHub 是国外网站,所以部署可能会因网络原因失败,可以多次输入 hexo d
命直至成功。
通过这一步,我们的静态文件已经上传到了 GitHub 对应的仓库中,我们终于可以通过域名来访问博客了。
部署成功后可能需要等几分钟,网页才会更新。
主题
可以在 Hexo 官网选择主题。
具体安装方式请查看相应主题制作者的说明。
结语
由于本人能力有限,本文难免会有纰漏,读者如果在操作过程中有任何疑问或发现本文错误,请在下方评论区提出。
参考
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!