前言:要知道些什么呢?
一:Pages 服务是啥:
代码托管网站将用户的仓库文件以网页形式发布,这就是「Pages」。在 Pages 服务中,代码仓库中的是网站的源文件,托管平台的服务器扮演了远程主机的角色,为了让网页能够正常访问,托管平台提供域名、证书等「配件」。利用这一服务,开发者可以高效地建立项目主页,或者个人博客。
在国内提供 Pages 服务的代码托管平台主要有微软旗下的 GitHub
,开源中国旗下的 Gitee
(码云)和与腾讯合作的 Coding
。三个平台的基础功能包括 Pages 的使用都是免费的?。
开通条件如下:
配套服务对比表格如下:
访问体验:
综上,GitHub
除了访问速度比较慢(地区差异,博主使用GitHub
部署的访问速度还可以:静态网站不同于动态。)优势比较明显:自定义域名不收费,自己购买的域名不同于gitee
通过收费获得自定义域名功能之后还需要进行''复杂漫长''的备案环节;自动化部署,通过git上传到库就不用自己手动更新了,不像隔壁的gitee花钱。?Coding因为它容易崩,更重要的是我没实际操作过。
二:Hexo 框架又是个啥
:
Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
Hexo 官方提供了各式各样的主题,而且使用人数很多,以后遇到问题或者是有关博客的美化环节可以借鉴他人的相关操作。且有很多插件可以使用,持支一键部署;可以去Hexo官网了解呀。
正式开始建站啦:
一:环境的配置:
必要的环境的配置:Git方便我们把本地文件部署到GitHub;Hexo是一个基于Node.js的静态博客框架,因此需要先安装Node.js环境
1、安装Node.js
Node.js官网:按照默认步骤进行安装
2、安装Git:
进入Git官网Git官网,点击 Downloads 下载:
参考资料?:《如何在windows下安装GIT》 《Pro Git(中文版)》
检验Git是否安装成功:
同时按下 Win 键和 R 键打开运行窗口,输入 cmd ,然后输入以下命令,有相应版本信息显示则安装成功,若不正确可以卸载软件重新安装,此外若安装成功,在桌面右键鼠标,可以看到菜单里多了 Git GUI Here
和 Git Bash Here
两个选项,第一个是图形界面的Git操作,另一个是命令行:
$ git --version $ node -v $ npm -v
3、安装Hexo并初始化:
选择一个磁盘,新建一个文件夹,自己重命名文件夹(如:Blog),博客相关文件将储存在此文件夹下,在该文件夹下右键鼠标,点击 Git Bash Here
,输入以下 npm 命令即可安装,第一个命令表示安装 hexo,第二个命令表示安装 hexo 部署到 git page 的 deployer(插件),如图所示即为安装成功
$ npm install hexo-cli -g $ npm install hexo-deployer-git --save
Hexo 初始化配置:
进入我们刚创建的Blog文件夹下鼠标右击,点击Git Bash Here,输入 hexo init
命令:
Hexo 安装完成后,将会在指定文件夹中新建所需要的文件,Hexo 文件夹下的目录如下:
查看本地效果:
执行以下命令,执行完即可登录 http://localhost:4000/ 查看效果
$ hexo generate $ hexo server
显示以下信息说明操作成功:
INFO Hexo is running at http://0.0.0.0:4000/. Press Ctrl+C to stop.
登录 http://localhost:4000/ 查看效果:
二:将博客部署到 Github/gitee Pages 上
到目前为止,我们的本地博客就成功搭建了,但是现在我们只能通过本地连接查看博客,我们要做的是让其他人也能够访问我们的博客,这就需要我们将博客部署到Github Pages上。
1、注册GitHub /gitee 账户:
你肯定会? GitHub Gitee
2、创建项目代码库
点击 New repository 开始创建,步骤及注意事项见下图:(gitee 差不多)
以"用户名.github.io"的格式命名可以获得一个不带二级目录的Pages首页访问地址(形如
name.github.io
),否则,您的GitHub Pages首页访问地址将形如name.github.io/仓库名
gitee 同理。
3、配置 SSH 密钥
通过配置 SSH 密钥我们能够更方便的实现本地代码库与 Github 代码库同步;当然,您也可以选择不配置SSH密钥而使用HTTPS连接来部署Blog,副作用是每次提交都需要输入托管网站的账号密码。
我们在新建的文件夹(Blog)中右键打开 Git Bash:输入 ssh-keygen -t rsa
命令(注意空格),表示我们指定 RSA 算法生成密钥,然后敲四次回车键,之后就就会生成两个文件,分别为秘钥 id_rsa 和公钥 id_rsa.pub. 文件的位置在 Git Bash 上面都有显示,默认生成在以下目录
Linux 系统:~/.sshMac 系统:~/.sshWindows 10 :C:/Users/用户名/.ssh
在 GitHub 账户中添加你的公钥:
① 登陆 GitHub,进入 Settings:
②选择选择 New SSH key:
③将复制的公钥 id_rsa.pub 的内容粘贴到 key 内,再点击 Add SSH key如下图:
④测试:我们可以通过在 Git Bash 中输入 ssh -T git@github.com
进行检验:
输入 yes 后会显示:
⑤配置个人git 信息
Git 会根据用户的名字和邮箱来记录提交,GitHub 也是用这些信息来做权限的处理,输入以下命令进行个人信息的设置,把名称和邮箱替换成你自己的,名字可以不是 GitHub 的昵称,但为了方便记忆,建议与 GitHub 一致
$ git config --global user.name "此处填你的用户名" $ git config --global user.email "此处填你的邮箱"
到此为止 SSH Key 配置成功,本机已成功连接到 Github。
4、将本地的 Hexo 文件更新到 GitHub 的库中
① 登录 Github 打开自己的项目 your name.github.io
② 鼠标移到 Clone or download 按钮,选择 Use SSH(假装您配置了SSh:真的方便)
③打开你创建的 Blog文件夹,右键用记事本(Notepad++或者VS code等都可以)打开该文件夹下的 _config.yml 文件
④配置Hexo:下滑到_config.yml文件底部,填上如下内容:
?假装您配置了SSH密钥:?如果仅仅只是用GitHub pages 服务我们可以填写:deploy: type: git repository: git@github.com:{yourname}/{yourname}.github.io.git #你的仓库地址SSH branch: master?GitHub和Gitee都配置(建议,前提你都有仓库了啊)deploy: type: 'git' repo: github: git@github.com:{yourname}/{yourname}.github.io.git gitee: git@gitee.com:{yourname}/{yourname}.git branch: master
⑤至此,您已经完成了将Hexo的静态网站同步部署至Github与码云(Gitee)的全部步骤。一如既往,让我们通过。
hexo clean #清除缓存文件 db.json 和已生成的静态文件 publichexo g #生成网站静态文件到默认设置的 public 文件夹(hexo generate 的缩写)hexo d #自动生成网站静态文件,并部署到设定的仓库(hexo deploy 的缩写)
⑥访问博客
你的博客地址:https://你的用户名.github.io,现在每个人都可以通过此链接访问你的博客了。
⑦写博客
新建一个空文章,在Blog下 git bash 输入以下命令
$ hexo n "文章标题"
程序会在我们的 \Blog\source \ _posts中生成 文章标题.md 文件,用Markdown
编辑器修改文章内容即可。
当我们用编辑器写好文章后,可以使用以下命令将其推送到服务器上
hexo cleanhexo ghexo d
现在访问你的博客就可以看见写好的文章啦!
三:博客主题相关:
现在博客也搭建好了,但是这样光秃秃的什么也没有不好看,是时候美化一波了!
1、主题选择与更换
①我们进入Hexo 官网的主题专栏:
②选择一个主题进入其GitHub的仓库 以NexT为例
打开博客根目录Blog文件夹,右键Git Bash,输入如下代码将next主题下载到目录Blog/themes:
git clone https://github.com/theme-next/hexo-theme-next themes/next 克隆这个原始主题库
③主题和站点的相关配置美化:
先敲响警钟:根目录Blog和主题文件next下都有一个
_config.yml
的配置文件,区分开来:站点配置文件和主题配置文件。?不要踩坑 啊
打开根目录下的_config.yml
(称为站点配置文件),修改主题(注意冒号后都要有空格):(推荐vscode编辑器)
?看英文单词 :这是网站标题这一块: # Site title: 好久没读诗了啊 subtitle: 写点什么 description: 昼眠听风,夜坐听雨 keywords: author: Serendipity language: zh-CN timezone: Asia/Shanghai ?网站主题这一块: # Extensions ## Plugins: https://hexo.io/plugins/ ## Themes: https://hexo.io/themes/ theme: next #主题改为next 以后修改站点的配置就可以在这个文价里面修改了
主题语言主要是看你的themes/next/language中的简体中文是 zh-CN 还是 zh-Hans:
next主题有四种,如下图依次为Muse、Mist、Pisces、Gemini。我选的是Gemini,打开目录Blog/themes/next/下的_config.yml
(称为主题配置文件),只要将你选的主题前的#删除就行了:
# Schemes#scheme: Muse#scheme: Mist#scheme: Piscesscheme: Gemini #这是我选的主题
回到根目录打开Git Bash,输入如下三条命令:
hexo cleanhexo ghexo d
完成后打开你的博客:
2、我踩过的坑:
其他的美化就可以网上照着弄了就可以了。
只要每一次更改内容都要以
hexo clean
hexo g
,然后hexo s
本地预览一下效果是否完成了,一步一步的来,避免慌慌张张思路不清晰的弄坏了配置无法打开了 还得重新开始。?自由发挥吧。。
3、附录:
持续更新
①购买域名:阿里云摸索着买。
②域名的解析:
- 登录阿里云,点击控制台,在你已购买的域名后点击解析添加两条解析记录:
- 那个IPV4地址可以通过
ping
得到,具体方法是:打开cmd输入下面命令:
ping 你的账户名.github.io #ping + 你的GitHub的网址
- 打开 Blog 文件夹里的 source 文件夹,添加
CNAME
文件,可以先创建一个CNAME.tx
t文件,打开后写上你的域名,不要加www否则每次访问都必须加www,但如果不带有www,以后访问的时候带不带www都可以访问,保存后记得要重命名,将.txt删除,如下图:
- 第三步回到 Blog 文件夹,右键打开 Git Bash,依次输入下面三条命令:
hexo cleanhexo ghexo d
- 打开GitHub,看看
CNAME
文件是否已经在你的项目中,点击 settings : - 如果你没有
CNAME
文件,可以自己在GitHub仓库里面添加这个文件。