使用 Github Pages 和 Hexo 搭建博客
一、前言
其实可以通过github.io搭建wiki或者个人博客我挺久之前就知道,不过一直没用,主要是因为已经有一个博客了,没必要再搭一个,不过最近兴起,就搭了个这个附属博客,同步更新主博客的文章。
附属博客地址(Hexo):https://baby7.github.io/
主博客地址(自研):https://www.baby7blog.com/index.html
截图:
下面说一下优缺点,主要对比的是购买服务器搭建个人博客。
优点:
- 不需要买服务器
使用Github Pages的服务器,只需要建一个github仓库,然后往里面放html文件就可以了,不需要去买服务器续费服务器。
- 不需要买域名
可以直接使用Github Pages提供的二级域名,不仅省去了买域名的花费,还省去了域名申请这个冗长的流程。
- 不需要担心被攻击
有Github撑腰,一点不带怕的,不像我现在这个博客,三天两头被攻击o(╥﹏╥)o
缺点:
- 不利于SEO收录
我尝试在百度的站长平台验证Github给的二级域名都提示不能被收录,不过可以通过再购买一个域名做转发,但这又是一笔花费,而且域名申请挺麻烦的。
新发现:google和必应可以收录github.io的网站!
谷歌站长工具: https://search.google.com/search-console?hl=zh-CN
必应站长工具: https://www.bing.com/webmasters
- 网络不太通畅
众所都周知,国内github的网络情况一言难尽,经常访问不了,这种情况在用它搭博客的情况下还不利于seo。当然如果自用的话有魔法就没问题了。
二、搭建
先推荐下官方的搭建方法,我搭建完才看见这个,不过也懒得再换了。
三、流程
一、 Github部分
1. 仓库
首先在建立一个仓库,仓库名是username.github.io,其中username是你的github账号名,这个也是你的最终的博客域名,如果你想改个别的域名,要不然改github的账号名(不过理论上之前仓库的地址都会变),要不然再申请一个账号。另外记得仓库的权限要设置成公开,不然无法访问。
截图:
2. 初始化
复制仓库地址,在本地使用你常用的开发软件或者VsCode什么的拉取代码然后创建一个index.html。
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>学习HTML五年有余,得此页面</h1>
</body>
</html>
3. 测试
push到仓库上以后等待Github Action完成,进入浏览器输入username.github.io测试是否能看到第二步初始化中的<h1>标签中的内容
二、Hexo部分
1. 初始化
首先进入仓库,然后执行如下命令
$ hexo init <folder>
$ cd <folder>
$ npm install
folder随便起,最好就起个hexo
2. 修改基础配置
修改_config.yml,这里放一下基础设置(来源官网)
| 设置 | 描述 |
|---|---|
title |
网站标题 |
subtitle |
网站副标题 |
description |
网站描述 |
keywords |
网站的关键词。 支持多个关键词。 |
author |
您的名字 |
language |
网站使用的语言。 使用 2 个字母的 ISO-639-1 代码,或 它的变体。 默认为 en。 |
timezone |
网站时区, Hexo 默认使用您电脑的时区。 请参考 时区列表, 中国可以用 Asia/Shanghai。 |
3. 新增文章
执行命令
$ hexo new [layout] <title>
layout是布局,这里先填post就行,然后title是文章标题
在目录/source/_posts中找到对应的md文件进行写作
4. 编辑文章
这里放个例子
---
title: 第一篇文章
date: 2024-01-01 00:00:00
---
> # 学习Markdown五年有余,得此文章
5. 本地运行
修改后在命令行运行
hexo server -p 4000
在浏览器输入localhost:4000查看是否可以访问到
6. 生成
在命令行输入
hexo generate
会在/public中生成所有的静态文件,复制所有的,粘贴到仓库那一层(就是上上层)
7. 测试
然后push除了的文件,等待Github Action完成后进入浏览器输入username.github.io测试是否能正常查看
四、主题
好看的博客主题必不可少
官方的主题仓库里有不少,我推荐最后更新时间比较近的,时间远的可能版本和Hexo不匹配。
- 使用:
一般是使用首先使用命令下载主题
$ git clone https://github.com/xxx/xxx-xxxx.git themes/xxxxx
然后在_config.yml文件中修改使用的主题
theme: xxxxx
- 选型:
纯看自己审美,我的主博客是暗色风还花里胡哨的,这个新搭建的就选一个浅色的,也没有多余东西的风格,做一下推荐:NexT
使用 Github Pages 和 Hexo 搭建博客的更多相关文章
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(四)-使用Travis自动部署Hexo(2)
前言 前面一篇文章介绍了Travis自动部署Hexo的常规使用教程,也是个人比较推荐的方法. 前文最后也提到了在Windows系统中可能会有一些小问题,为了在Windows系统中也可以实现使用Trav ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(三)-使用Travis自动部署Hexo(1)
前言 前面两篇文章介绍了在github上使用hexo搭建博客的基本环境和hexo相关参数设置等. 基于目前,博客基本上是可以完美运行了. 但是,有一点是不太好,就是源码同步问题,如果在不同的电脑上写文 ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(二)-Hexo参数设置
前言 前文手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置介绍了github注册.git相关设置以及hexo基本操作. 本文主要介绍一下hexo的常用参数设置. ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置
前言 有朋友问了我关于博客系统搭建相关的问题,由于是做开发相关的工作,我给他推荐的是使用github的gh-pages服务搭建个人博客. 推荐理由: 免费:github提供gh-pages服务是免费的 ...
- 使用Github Pages和Hexo构建博客
Github Pages可以创建免费的静态站点,支持自带主题.支持自制页面等,并且可以使用Jekyll或者Hexo等静态博客框架进行管理. 独立博客是博客园等博客平台之外的一个良好补充,相比使用虚拟主 ...
- 基于Hexo搭建博客并部署到Github Pages
基于Hexo搭建博客并部署到Github Pages 之前在简书上写东西,觉得自己还是太浮躁.本来打算用Flask自己写一个,以为是微框架就比较简单,naive.HTML.CSS.JS等都要学啊,我几 ...
- 使用github+hexo搭建博客笔记
听说github上可以搭博客,而且不用自己提供空间和维护,哈哈哈 作为一名程序猿,github搭博客对我有种神奇的吸引力,赶紧动手试一试 关于如何使用hexo搭建博客网上好的教程多如牛毛,而且这篇博客 ...
- 如何使用 GitHub Pages 维护自己的博客
目录 前置知识 实际操作 声明 本文地址:如何使用 GitHub Pages 维护自己的博客 前置知识 首先,你应该知道如何用 Hexo 在本地搭建一个博客系统,具体见 Hexo. 其次,我们如果想使 ...
- 利用hexo搭建博客
利用Hexo搭建博客 以前用Octopress搭过博客,折腾了好久才弄出来,当时看到那巨难看的默认主题,繁琐的操作,一点写东西的欲望都没了. 一次逛微博,看见了Hexo.尝试了一下,真的很好用哦. 下 ...
- github+hexo搭建博客
引言 之前用阿里云弹性web托管采用wordpress搭建的个人博客,经过我使用一段时间之后发现存在很多问题: 网站的响应速度非常慢,估计打开主页需要3-4s的时间,我经过搜索发现很多人都有这 ...
随机推荐
- SciTech-BigDataAIML-NLP- 分词之 BPE | WordPiece | Unigram | SentencePiece 以及 sentencepiece原理与实践
https://github.com/google-research/retvec: BERT,XLNET分词方法bpe,wordpiece, unigram, sentencepiece 等介绍 h ...
- SciTech-EECS-一次完成“电子”和“机械”统一设计: 3D化PCB(电路板)设计 与 solidworks的3D化产品设计 完美结合
Altium Designer做PCB设计. Altium Designer导出PCB设计为3D封装的设计文件. SolidWorks 导入Altium Designer导出的3D设计文件. Soli ...
- [Linux]Centos系统离线安装unzip和zip --九五小庞
问题手里有一台服务器不能联网但是需要使用zip和unzip.使用如下的方法就可以解决. 解决手里这台服务器的系统是CentOS但是哪个版本记不住了: cat /etc/redhat-release C ...
- 万人同屏 角色动画优化 Animation Instancing动画实例化– SkinnedMeshRenderer的实例化 GPU Instancing
在上一篇文章中有个技术点引发了我的好奇 GPU Instancing 这个技术是Unity自带的功能,但是他不支持SkinnedMeshRenderer,所以要采用特殊方法 他这里采用GPU蒙皮+EC ...
- CVE-2022-41678 后台代码执行漏洞 (复现)
执行docker compose up -d启动容器 访问ip:8161 默认账密admin/admin登录后台 复现方法1: 通过修改 Log4j 配置写入任意文件 执行python3 poc.py ...
- AI 赋能的云原生应用:技术趋势与实践
AI 赋能的云原生应用:技术趋势与实践 随着人工智能技术的飞速发展,云计算作为基础设施的角色日益重要.AI 与云计算的结合,正在催生新一代的云原生应用,为各行各业带来变革性的力量. 本文将探讨 AI ...
- Exchange 2010 SSL证书安装文档
在Microsoft Exchange 2010中安装和配置SSL证书是一个关键步骤,以确保邮件服务器的安全通信.以下是一个详细的教程,指导你完成整个过程. 第一步:获取SSL证书 1.购买并获取SS ...
- P3385 【模板】负环(SPFA)
题目链接:https://www.luogu.com.cn/problem/P3385 题解 #include <bits/stdc++.h> using namespace std; c ...
- IAR环境安装记录-个人使用
1.双击运行exe 2.选择第一个 3.不选择这项,一直安装继续 4.安装完成后退出 5.运行exe 6.help->注册表->离线注册 7.生成破解码 8.No 9.选择激活文件的保存位 ...
- Linux 文件IO操作
1.打开和关闭文件 1.1 open #include<unistd.h> #include<fcntl.h> int open(const char *pathname, i ...