利用github搭建有专属域名的免费,简单,快捷的个人博客。赏心悦目,无每天只能发一次的限制!-程序员宅基地

技术标签: github  

如果爱折腾探索且需要一个专属免费的个人网页,这篇看完将帮助你!作者也将自己付费域名nyada.cn的二级域名(如a.nyada.cn, a是自定义域名区)拿出10个送给志同道合的朋友,联系方式进nyada.cn左侧有邮箱。

目录

一、准备工作

二、使用 Hexo+GitHub 搭建个人免费博客教程

0. 简介

GitHub Pages 是什么?

Hexo 是什么?

Hexo + GitHub 文章发布原理

优点和不足

1. 准备

注意事项

环境搭建

2. 连接 Github

3. 创建 Github Pages 仓库

4. 本地安装 Hexo 博客程序

4.1 安装 Hexo

4.2 Hexo 初始化和本地预览

5. 部署 Hexo 到 GitHub Pages

三、使用并美化个人博客

1.建站

写作

2.新建文章

3. 生成静态页面

4.启动网站

5.插入图片

6.部署到 Github 或 Coding

使用 Next 主题

7.安装和启用

8.配置 Next

9.更换风格

10.开启数学公式支持

11. 添加邮箱和 Github 链接

12.设置菜单

13.修改头像

14.其他资源

四、绑定域名(可选),这里也可以免费使用作者的二级域名形如a.nyada.cn(a为自定义域名区,限定前十个联系的人)

1 域名注册和解析

2 绑定域名到 Hexo 博客

3 开启 HTTPS

end


一、准备工作

在正式的搭建之前,我们需要有这样的思路。

  1. 在哪里展示我们的博客呢?经过我一年来的了解github pages是一个非常好的选择,这就需要你有一个github账号(如注册账号为along),那么你的个人主页项目搭建后将存在于名为along.github.io的项目中,后续你可以通过along.github.io访问你的个人主页。

  2. 如果你想有一个自己的专属自定义的域名,你需要去域名注册网站(阿里云、腾讯云等等)然后解析到along.github.io即可实现有专属域名的个人博客

  3. 怎么运营管理我们的博客呢?有一些利用WordPress等等建立的博客,在网页后台可以随时随地的管理。这种是不错,但对于个人来说,我自身是想本地进行管理然后git同步到个人主页上。最近我神奇的发现了这样的本地管理工具——Hexo,他是简洁、强大且稳定的。进一步的你想美化主页也可以用官方的主题。

  4. 需要下载的软件git,node.js,Hexo;并提前使用邮箱注册个人github账号。

二、使用 Hexo+GitHub 搭建个人免费博客教程

0. 简介
GitHub Pages 是什么?

GitHub Pages 是由 GitHub 官方提供的一种免费的静态站点托管服务,让我们可以在 GitHub 仓库里托管和发布自己的静态网站页面。

Hexo 是什么?

Hexo 是一个快速、简洁且高效的静态博客框架,它基于 Node.js 运行,可以将我们撰写的 Markdown 文档解析渲染成静态的 HTML 网页。

Hexo + GitHub 文章发布原理

在本地撰写 Markdown 格式文章后,通过 Hexo 解析文档,渲染生成具有主题样式的 HTML 静态网页,再推送到 GitHub 上完成博文的发布。

img

优点和不足

优点:完全免费;静态站点,轻量快速;可按需求自由定制改造;托管在 GitHub,安全省心;迁移方便……

不足:发文不便,依赖于本地环境;更适合个人博客使用;GitHub 在国内访问速度有点不快。

1. 准备
注意事项
  • 输入代码时,核对准确,最好切换成英文输入法;

  • 将文中的 “用户名” 和 “邮箱” 替换为自己的 GitHub 账户名和绑定的邮箱;

  • 统一使用 Git Bash 进行操作(支持 Win、Mac);

  • 小白请严格按步骤进行,不要跳!

环境搭建

Hexo 基于 Node.js,搭建过程中还需要使用 npm(Node.js 已带) 和 git,因此先搭建本地操作环境,安装 Node.js 和 Git。

下载 Node.js 和 Git 程序并安装,一路点 “下一步” 按默认配置完成安装。

安装完成后,Win+R 输入 cmd 并打开,依次输入 node -vnpm -vgit --version 并回车,如下图出现程序版本号即可。

img

2. 连接 Github

使用邮箱注册 GitHub 账户,选择免费账户(Free),并完成邮件验证。

右键 -> Git Bash Here,设置用户名和邮箱

git config --global user.name "GitHub 用户名"
git config --global user.email "GitHub 邮箱"

创建 SSH 密匙

输入 ssh-keygen -t rsa -C "GitHub 邮箱",然后一路回车。

添加密匙:

进入 [C:\Users\用户名.ssh] 目录(要勾选显示“隐藏的项目”),用记事本打开公钥 id_rsa.pub 文件并复制里面的内容。

登陆 GitHub ,进入 Settings 页面,选择左边栏的 SSH and GPG keys,点击 New SSH key。

Title 随便取个名字,粘贴复制的 id_rsa.pub 内容到 Key 中,点击 Add SSH key 完成添加。

img

验证连接:

打开 Git Bash,输入 ssh -T [email protected] 出现 “Are you sure……”,输入 yes 回车确认。

img

显示 “Hi xxx! You've successfully……” 即连接成功。

3. 创建 Github Pages 仓库

GitHub 主页右上角加号 -> New repository:

  • Repository name 中输入 用户名.github.io

  • 勾选 “Initialize this repository with a README”

  • Description 选填

填好后点击 Create repository 创建。

img

创建后默认自动启用 HTTPS,博客地址为:https://用户名.github.io

4. 本地安装 Hexo 博客程序

新建一个文件夹用来存放 Hexo 的程序文件,如 Hexo-Blog。打开该文件夹,右键 -> Git Bash Here。

4.1 安装 Hexo

使用 npm 一键安装 Hexo 博客程序:

npm install -g hexo-cli

Mac 用户需要管理员权限(sudo),运行这条命令:

sudo npm install -g hexo-cli

安装时间有点久(真的很慢!),界面也没任何反应,耐心等待,安装完成后如下图。

img

4.2 Hexo 初始化和本地预览

初始化并安装所需组件:

hexo init      # 初始化
npm install    # 安装组件

完成后依次输入下面命令,启动本地服务器进行预览

hexo g   # 生成页面
hexo s   # 启动预览

访问 http://localhost:4000,出现 Hexo 默认页面,本地博客安装成功!

img

Tips:如果出现页面加载不出来,可能是端口被占用了。Ctrl+C 关闭服务器,运行 hexo server -p 5000 更改端口号后重试。

Hexo 博客文件夹目录结构如下:

img

5. 部署 Hexo 到 GitHub Pages

本地博客测试成功后,就是上传到 GitHub 进行部署,使其能够在网络上访问。

首先安装 hexo-deployer-git

npm install hexo-deployer-git --save

然后修改 _config.yml 文件末尾的 Deployment 部分,修改成如下:

deploy:
  type: git
  repository: [email protected]:用户名/用户名.github.io.git
  branch: master

完成后运行 hexo d 将网站上传部署到 GitHub Pages。

完成!这时访问我们的 GitHub 域名 https://用户名.github.io 就可以看到 Hexo 网站了。

本节来自:使用 Hexo+GitHub 搭建个人免费博客教程(小白向) - 知乎 (zhihu.com)

三、使用并美化个人博客

1.建站
hexo init blog    # blog 是自己起的目录名
cd blog
npm install

完成后,blog 目录下结构如下:

├── _config.yml
├── package.json
├── package-lock.json
├── node_modules(目录)
├── scaffolds(目录)
├── source
|   ├── _drafts
|   └── _posts
└── themes(目录)

_config.yml

网站配置信息(标题,作者,主题、部署等等)

package.json/package-lock.json

Hexo 是一个 node.js 应用,可以通过 npm 安装各种扩展包,这两个文件就记录了安装的包信息。

node_modules 目录

这个目录中存放通过 npm 安装的包

scaffolds 目录

模版文件夹。当您新建文章时,Hexo 会根据 scaffold 来建立文件。

source 目录

这个目录就是用户写文章的地方,_post 目录下存放用户写的 Markdown 文件会被解析成 HTML 并放入 public 文件夹中。

theme 目录

主题文件夹,Hexo 会根据主题来生成不同风格的页面。

写作
2.新建文章
hexo new "Write blog using markdown"
# 或简写为
hexo n "Write blog using markdown"

该命令会在 _post 目录下生成文件 write-blog-using-markdown.md。可以在文件开头设置标题,时间、标签,分类等,如下:

title: 用 Markdown 写博客
date: 2018-08-13 09:22:18
tags:
    - markdown
    - blog
categories:
    - tutorial
    - markdown

接着这部分就是文章的正文,遵循 Markdown 格式。

3. 生成静态页面
hexo generate
# 或简写为
hexo g
4.启动网站
hexo server
# 或简写为
hexo s

打开浏览器,在地址栏中输入 http://localhost:4000 就可以看到自己的博客了。本地网站只是方便开发时预览效果,其他人无法通过互联网访问。

如果无法显示,可能是 4000 端口被占用了,可以使用如下命令指定端口

hexo s -p 4444

或者修改 node_modules/hexo-server/index.js 文件,修改默认端口

hexo.config.server = assign({
  port: 4444,
  log: false,
  ip: '0.0.0.0',
  compress: false,
  header: true
}, hexo.config.server);
5.插入图片

在 _config.yml 开启资源文件夹

post_asset_folder: true

这样,在 _posts 目录下会生成一个与文章同名的文件夹。把需要插入到文章中的图片放到该文件夹中,并在写文章时通过如下标签引用即可。

{% asset_img <图片名> [图片标题] %}
6.部署到 Github 或 Coding

首先在 Github 中新建名为 http://jia-zhuang.github.io 的项目,这样部署成功后,就可以通过链接 https://jia-zhuang.github.io 来访问网站了。

若是在 Coding 中,项目名应为 http://jiazhuang.coding.me,网站访问链接为 http://jiazhuang.coding.me

安装 hexo-deployer-git

npm install hexo-deployer-git --save

修改 _config.yml 配置

deploy:
  - type: git
    repo: [email protected]:jiazhuang/jiazhuang.coding.me.git
    branch: coding-pages
  - type: git
    repo: [email protected]:jia-zhuang/jia-zhuang.github.io.git
    branch: master

注意:我们这里使用 coding-pages 分支部署网站,把 master 分支留给整个 Hexo 的备份;而Gibhub 个人主页只能使用 master 分支

在 Github 和 Coding 中开启 Github pages 和 Coding pages 服务,选择对应分支。

使用 Next 主题

Hexo 默认的 Landscape 主题不够美观,换成流行的 Next 主题吧!通过对 Next 主题简单的设置,基本可以满足新手所有的需求。

7.安装和启用
git clone https://github.com/iissnan/hexo-theme-next themes/next

主题将会被下载到 theme/next 目录下。

在站点配置文件 _config.yml 更换主题:

#theme: landscape    # 注释掉这一行,换成下面
theme: next
8.配置 Next

Next 主题有自己的配置文件,位于 theme/next/_config.yml,里面有丰富的配置,详细可以参考 Next中文文档。这里列出几个常用配置。

9.更换风格
# Schemes
#scheme: Muse
scheme: Mist
#scheme: Pisces
#scheme: Gemini

一共有四种风格,可以通过注释来开启和关闭某个风格。

10.开启数学公式支持
mathjax:
  enable: true
  per_page: true
  cdn: //cdn.bootcss.com/mathjax/2.7.1/latest.js?config=TeX-AMS-MML_HTMLorMML
11. 添加邮箱和 Github 链接
social:
  GitHub: "https://github.com/jia-zhuang || github"
  E-Mail: mailto:[email protected] || envelope
12.设置菜单
menu:
  home: / || home
  tags: /tags/ || tags
  categories: /categories/ || th
  archives: /archives/ || archive

这样会在主页增加 tags 和 categories 菜单(链接),还需生成相应的页面:

hexo g page tags
hexo g page categories

这样会在 source 目录下生成 tags 和 categories 目录。分别打开两个目录中的 index.md,可以修改页面标题,但需要设置 type 字段:

title: 标签
date: 2018-08-14 09:13:19
type: tags


title: 分类
date: 2018-08-14 09:13:19
type: categories
13.修改头像

将图片放入 theme/next/source/images 目录下,并在 Next 配置文件 theme/next/_config.yml 文件中引用图片:

avatar: /images/gene.jpg
14.其他资源

除 Next 之外,Hexo 还有非常丰富的主题,可以浏览 Hexo 官网寻找适合自己口味的主题。

随着博客数量和网站需求的增加,可能需要多种多样的扩展功能,可以在 Hexo 官网插件页面找当满足自己需求的插件。

本节参考如下:

作者:jiazhuamh 链接:Hexo 简明教程 - 知乎 来源:知乎

四、绑定域名(可选),这里也可以免费使用作者的二级域名形如a.nyada.cn(a为自定义域名区,限定前十个联系的人)

博客搭建完成使用的是 GitHub 的子域名(如along.github.io),我们可以为 Hexo 博客绑定自己的域名替换 GitHub 域名,更加个性化和专业,也利于 SEO。

我们使用 Namesilo 进行注册,便宜好用没啥套路,使用优惠码 okoff 优惠一美元,com 域名大概 50 块一年。

1 域名注册和解析

按上面教程注册并解析域名,在 DNS 设置部分,删除自带的记录,然后添加 CNAME 记录将 www 域名解析指向 用户名.github.io

img

2 绑定域名到 Hexo 博客

进入本地博客文件夹的 source 目录,打开记事本,里面输入自己的域名,如 http://www.example.com,保存名称为 “CNAME”,格式为 “所有文件”(无 .txt 后缀)。

清除缓存等文件并重新发布网站:

hexo clean   # 清除缓存文件等
hexo g       # 生成页面
hexo s       # 启动预览

现在就可以使用自己的域名访问 Hexo 博客了。

3 开启 HTTPS

配置自己的域名后,需要我们手动开启 HTTPS。打开博客所在 GitHub 仓库,Settings -> 下拉找到 GitHub Pages -> 勾选 Enforce HTTPS。

img

HTTPS 证书部署成功需要一定时间,等大概几分钟再访问域名,就可以看到域名前面的小绿锁了,HTTPS 配置完成!

end

Hexo 是一种纯静态的博客,我们必须要在本地完成文章的编辑再部署到 GitHub 上,依赖于本地环境。不能像 WordPress 或 Typecho 那样的动态博客一样能直接在浏览器中完成撰文和发布。

可以说是一种比较极客的写博客方式,但是优势也是明显的——免费稳定省心,比较适合爱折腾研究的用户,或者没有在线发文需求的朋友。

本节参考: 使用 Hexo+GitHub 搭建个人免费博客教程(小白向) - 知乎 (zhihu.com)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wtuhan/article/details/137373734

智能推荐

[点击百度快照]基于MATLAB GUI的成绩查询系统_matlabgui中点击查询出结果-程序员宅基地

文章浏览阅读123次。该课题为基于MATLAB GUI的成绩查询系统,可导入,增删,查询,修改学生成绩,并且可以统计各个学科分数听课,最高分,最低分,中位数等信息。是个不错的课设题目。_matlabgui中点击查询出结果

C++实现快速排序(源代码)_c++快速排序源码-程序员宅基地

文章浏览阅读637次。原文链接:https://blog.csdn.net/liuchen1206/article/details/6954074_c++快速排序源码

【手册】CDH6.3.2及hadoop生态圈工具安装部署手册(附带安装包)_hadoop cdh 6-程序员宅基地

文章浏览阅读2k次。大数据测试环境CDH6.3.2安装部署手册一、前期准备1、服务器3台,系统要求centos7,服务器配置24核心+64G内存+2.7T磁盘2、CDH6.3.2相关资源,目前在线下载已收费,只能采用离线安装3、CM6.3.1相关资源,目前在线下载已收费,只能采用离线安装4、mysql驱动,jdk安装包5、集群规划6、Flink1.12目前官网没有提供,官网只提供了flink1.9版本的集成,如需使用需要自己编译。内存磁盘CPUcmcdhMysqlHiveImpalaK_hadoop cdh 6

你的第一篇SCI是怎么发的呢?-程序员宅基地

文章浏览阅读1.9k次,点赞5次,收藏22次。来源:https://www.zhihu.com/question/337008253编辑:深度学习与计算机视觉声明:仅做学术分享,侵删又快到毕业季,有..._机器视觉怎么发sci

Webmin 远程代码执行 (CVE-2022-0824)漏洞搭建复现+攻击检测原理(流量分析)详细-程序员宅基地

文章浏览阅读2.9k次。在 Webmin v1.984 中,影响文件管理器模块,任何没有文件管理器模块访问权限的经过身份验证的低权限用户都可以与文件管理器功能交互,例如从远程 URL 下载文件和更改文件权限 (chmod)。通过在文件管理器中链接这些功能,可以通过精心制作的 .cgi 文件实现远程代码执行。_cve-2022-0824

远程项目和本地项目合并的解决方案-idea或本地git测试都行_同类项目合并方案-程序员宅基地

文章浏览阅读1.5k次。原文地址https://blog.csdn.net/kiddd_fu/article/details/78247290终极解决方案出现(non-fast-forward)的根本原因是repository已经存在项目且不是你本人提交(我知道是大概率你提交的,但是git只认地址),你commit的项目和远程repo不一样。这时该怎么办呢?很简单,把远端项目拉回本地:git pull然而pu..._同类项目合并方案

随便推点

java scriptengine,使用Java ScriptEngine(Groovy),如何使它更具性能?-程序员宅基地

文章浏览阅读1.2k次。I am using ScriptEngine in my app to evaluate some client code in my application.The problem is it's not performant enough and I need to take measures to improve the time of execution.Currently, it ca..._scriptenginemanager 性能优化

docker项目运行环境搭建(JDK8、mysql8、tomcat9、redis5、nginx1.14)_docker jdk8-程序员宅基地

文章浏览阅读436次。1、在/home/mysql目录下新建两个文件夹,一个叫data另一个叫conf。_docker jdk8

临床试验中edc录入_一文了解EDC临床试验数据采集系统-程序员宅基地

文章浏览阅读7.1k次。不知道大家是不是和我一样,初入行业的时候并不懂啥是EDC。后来我觉得,当时不懂也正常,毕竟EDC这种东西在国内出现也没多久。说起EDC要先从CRF(Case Report Form),即临床试验病例报告表说起。啥是CRF呢?在药物的临床试验项目中,不管你protocol写得多牛比,总得需要一项一项地去收集受试者的试验信息,比如受试者今天吃了多少药?有没有不良反应? 血液中各项指标是多少?因此我们需..._edc录入

Windows环境中同时安装Oracle9i 和10g_大胖黑马(授权发布)-程序员宅基地

文章浏览阅读172次。Windows环境中同时安装Oracle9i 和10g                               原创者:大胖黑马(授权发布)简单说一下在windows的同一用户下,安装Oracle的9i、10g 的方法1、安装版本需要从低到高。也就是说先安装9i的数据库,然后安装10g的数据库2、安装目录分开。3、在低版本的数据库安装完成后,最好通过..._oracle 9i 和oracle 10g同时使用

OpenCV-Python官方教程-30- 支持向量机(support vector machines, SVM)_python opencv 计算向量-程序员宅基地

文章浏览阅读305次。使用SVM进行手写数据OCR在 kNN 中我们直接使用像素的灰度值作为特征向量。这次我们要使用方向梯度直方图Histogram of Oriented Gradients (HOG)作为特征向量。在计算 HOG 前我们使用图片的二阶矩对其进行抗扭斜(deskew)处理,也就是把歪了的图片摆正。所以我们首先要定义一个函数 deskew(),它可以对一个图像进行抗扭斜处理。下面就是 deskew() 函数:..._python opencv 计算向量

CUDA入门3.1——使用CUDA实现鱼眼转全景图(OpenCV环节)_鱼眼图像展开成全景图-程序员宅基地

文章浏览阅读2.7k次。思路1,通过某种方法获取图片数据,并且了解数据结构。 2,通过某种数学公式将鱼眼画面处理成全景图。 3,通过CUDA并行运算实现鱼眼转全景图功能。 本篇主要讲述OpenCV获取图片以及指针的使用,与CUDA无关。获取图片数据OpenCV环境配置1 下载OpenCVOpenCV 下载驿站(百度云盘下载,同步更新)2 配置OpenCV开发环境配置的方法网上很多,可以查找。我用的是 OpenCV环境_鱼眼图像展开成全景图

推荐文章

热门文章

相关标签