前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hexo + Gitee 搭建个人博客

Hexo + Gitee 搭建个人博客

作者头像
野原测试开发
发布2020-06-05 15:25:18
1.1K0
发布2020-06-05 15:25:18
举报
文章被收录于专栏:技术探究

环境搭建

  • Git
  • Node.js
    • 最新的 Node.js 已经集成了 npm
  • npm

官网地址:

  • https://nodejs.org/en/
  • https://git-scm.com/

开始搭建

1. 安装 Hexo

代码语言:javascript
复制
npm install -g hexo   # 通过npm安装hexo
# -g 指定全局安装,可以使用hexo命令

2. 初始化 Hexo

代码语言:javascript
复制
hexo init blog  # 初始化创建,会再桌面创建blog文件夹
cd blog    # 进入blog目录
npm install   # 进一步安装hexo所需文件

初始化后,文件夹的目录如下:

代码语言:javascript
复制
.
├── .deploy       #需要部署的文件
├── node_modules  #Hexo插件
├── public        #生成的静态网页文件
├── scaffolds     #模板
├── source        #博客正文和其他源文件等都应该放在这里
|   ├── _drafts   #草稿
|   └── _posts    #文章
├── themes        #主题
├── _config.yml   #全局配置文件
└── package.json

3. 启动 Hexo

代码语言:javascript
复制
hexo clean   # 清除所有记录 /hexo c
hexo generate  # 生成静态网页 /hexo g
hexo server    # 启动服务 /hexo s

显示如下图,则运行成功。

然后使用浏览器访问 http://localhost:4000

其实,如果你要求不高,我们再把它部署到码云(gitee)上,现在也可以说是完成了。

4. 把博客部署到码云上

首先说明一下,为什么选择码云,因为我也是通过 GitHub Page 实现的,不过最近 GitHub 经常性蹦,访问也比较慢,所以我就选择了码云实现一下,当然你有服务器就最好不过了

码云(gitee):https://gitee.com/

4.1 注册码云,创建仓库

我们需要在 gitee 创建自己的账户(如果没有),然后再创建一个自己仓库

输入仓库名称,其它默认即可,这里因为我已经创建了

4.2 生成/添加 SSH 公钥

码云 Gitee 、GitHub 提供了基于 SSH 协议的 Git 服务,在使用 SSH 协议访问仓库仓库之前,需要先配置好账户/仓库的 SSH 公钥。

配置 ssh 账户和邮箱

邮箱不必与 GitHub、Gitee 账号相同,个人邮箱即可。

代码语言:javascript
复制
git config --global user.email *********@qq.com # 设置邮箱
git config --global user.name '****'   # 设置用户名

查看账户和邮箱

代码语言:javascript
复制
git config --global user.name 
git config --global user.email

本地生成ssh公钥

邮箱为刚配置好的账户邮箱

代码语言:javascript
复制
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"

按照提示完成三次回车,即可生成 ssh key

查看 ssh 公钥

代码语言:javascript
复制
vim ~/.ssh/id_rsa.pub

# 退出
:qa!

复制公钥去 Gitee 粘贴,添加

说明一下:

  • GitHub、gitlab、码云三个平台可以使用一个公钥

测试是否连接成功

码云 Gitee

代码语言:javascript
复制
ssh -T git@gitee.com

如下图所示,则表示连接成功

另外, GitHub 的测试代码如下:

代码语言:javascript
复制
ssh -T git@github.com
  
# 表示连接成功
Hi “您的用户名”! You've successfully authenticated, but GitHub does not provide shell access.
4.3 配置连接 Gitee

进入到我们新创建的仓库,复制项目地址

复制 URL ,到 hexo 的配置文件 _config.yml,相应位置修改成如下:

代码语言:javascript
复制
deploy:
  type: git                        # type为git
  repo: git@gitee.com:XXXXXX/blog.git  # 仓库的 URL
  branch: master

注意:冒号后面一定要有空格,否则不能正确识别。

4.4 部署博客

安装自动部署发布工具,不然部署会报错

代码语言:javascript
复制
npm install hexo-deployer-git --save

新建 deployer.sh 文件,输入代码:

代码语言:javascript
复制
hexo clean
hexo g 
hexo d

一键部署博客

代码语言:javascript
复制
sh deployer.sh

5. Gitee Pages 设置

在项目的服务中选择 Pages 选项

默认配置,点击启动即可

下图则成功开启,记住博客地址,之后可以点更新进行操作

博客发布成功之后,可以访问博客地址:xxxxxx,就可通过他提供的博客地址进行访问,预览在线博客啦!!

如果博客的样式不对,则需要在_config.yml中配置下博客地址和路径:

代码语言:javascript
复制
url: “码云提供给您的博客地址”
root: /

再执行命令 sh deployer.sh 就可以啦,之后就是美化我们的博客了。

6. 主题配置

下载自己喜欢的主题,可以去 github 下载压缩包然后放到博客项目根目录下的 themes 中

然后配置 _config.yml

代码语言:javascript
复制
theme: “您的主题文件夹完整名称”  
# 这里需要注意:后面要有一个空格,名称要和theme下的主题目录名称相同。

修改完成,本地运行 hexo s 测试成功即可上传部署到 Gitee 然后点击更新即可。

7. 自定义域名

经过上面操作,我们用 Hexo 搭建好自己的 Blog 后,我选择了托管在码云上,现在通过 https://xx0817.gitee.io/blog 这个地址就可以访问了。但是我想通过自己的域名进行访问,要实现这个功能。

7.1 购买域名

这里不多说,某里云、某讯云、某为云都可以,看自己喜欢。

7.2 域名解析

我们需要通过 GitHub 网址 ping 出服务器的 IP 地址。可以在本地 cmd 中 ping。也可以在网站上 ping。

我选择网站 ping。

网站:http://ip.tool.chinaz.com/

访问后输入自己的 GitHub 部署的博客网址就能 ping 出来了。

进入域名购买的控制台,在解析中添加记录:

添加记录:

主机记录为@,记录类型为A,解析线路选择默认,记录值设置为上面ping出来的IP地址。最少要设置一个,我是四个全部设置了。

再添加记录:

主机记录为www,记录类型为 CNAME,解析线路选择默认,记录值为你的 GitHub 域名,我的为 gdfuturexx.github.io。

上面设置的意思为:

  • 设置 A 记录的意思是,当我输入 hongxin.online 这个域名的时候,访问的是 185.199.110.153等这4个IP地址其中一个;
  • 设置 CNAME 的意思是,当我访问 gdfuturexx.github.io 这个地址的时候,会跳转到 hongxin.online,之后的过程就和 A 记录相同了,即访问 185.199.110.153等4个IP地址其中一个。
7.3 添加CNAME文件

在Hexo本地文件夹的source文件夹中,增加一个名为CNAME的无后缀文件。

如果你想地址栏中显示www就输入www.xxx.com,否则输入xxxx.com(你的域名)就行。

之后重新部署即可。

7.4 GitHub Pages 绑定域名

登录你的GitHub,进入仓库,打开设置。

找到下图位置,在 Custom domain 添加你的自定义域名。

之后刷新一下页面,如果 能勾选Enforce HTTPS就要勾选上。如果不勾选的话访问域名会显示不安全。

自定义域名这段参考了:sushan102.top,这个网站中的文章

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一直学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 环境搭建
  • 开始搭建
    • 1. 安装 Hexo
      • 2. 初始化 Hexo
        • 3. 启动 Hexo
          • 4. 把博客部署到码云上
            • 4.1 注册码云,创建仓库
            • 4.2 生成/添加 SSH 公钥
            • 4.3 配置连接 Gitee
            • 4.4 部署博客
          • 5. Gitee Pages 设置
            • 6. 主题配置
              • 7. 自定义域名
                • 7.1 购买域名
                • 7.2 域名解析
                • 7.3 添加CNAME文件
                • 7.4 GitHub Pages 绑定域名
            相关产品与服务
            云服务器
            云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档