Hexo-零基础搭建个人博客(详解)

2023-10-27

Hexo零基础搭建个人博客

Hexo是一个基于 node.js的快速生成静态博客的开源框架,支持 Markdown和大多数 Octopress
插件,一个命令即可部署到 Github页面、 Giteee、 Heroku等,强大的APl,可无限扩展,拥有
数百个主题和插件。

简单来说就是一个不用你写代码,就能搭建一套属于你自己的个人博客网站 应用(零基础小白也会)。

你可以在上面编写文章,做笔记,写日记,码代码。(一个属于你的世界!一个可供别人访问的个人世界)

另外Hero还提供了大量主题模版供用户下载。你的博客网站将可以时不时的换一种主题风格,赏心悦目,简直完美!

一、环境准备

1、安装Node.js

直接到官网上下载安装即可https://nodejs.org/en/download/

  • Node.js (Node.js 版本需不低于 10.13,建议使用 Node.js 12.0 及以上版本)
  • Node自带npm

2、安装Git

  • Windows:下载并安装 git.
  • Mac:使用 Homebrew, MacPorts 或者下载 安装程序
  • Linux (Ubuntu, Debian):sudo apt-get install git-core
  • Linux (Fedora, Red Hat, CentOS):sudo yum install git-core

image-20211203163731241

npm下载慢的话也可以下载淘宝下载源cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

image-20211203164023278

二、开始安装Hexo

1、安装hexo

npm install -g hexo-cli
或者
cnpm install -g hexo-cli

安装完成可输入hexo -v查看版本

image-20211203164700035

2、初始化hexo,新建存储博客的文件夹

hexo init myblog

image-20211203165005655

3、进入文件夹,安装一下npm

cd myblog
npm install

可以看到我们的hexo站点就已经安装好了,接下来就可以直接启动他了

iShot2021-12-03 16.55.54

4、启动服务站点

hexo g 
hexo server

image-20211203165829687

访问http://localhost:4000/ 至此hero就搭建好了。可以在本地访问了

20211203170208

三、Gitee上建站访问

可在github或者gitee上建站,gitee国内访问快一些

1、新建仓库

格式必须是:用户名+.gitee.io 只有这样,将来要部署到Gite e page的时候,才会被识别,也就是xxxx.gitee.io,其中xxx就是你注册Gitee的用户名。

image-20211203170607538

2、将hexo博客站点上传到gitee上

这里需要安装一个hexo的上传插件deploy-git

npm install hexo-deployer-git --save

image-20211203171157254

3、修改hexo配置文件指定仓库路径

可在文件夹中直接打开文件,也可通过vim直接编辑

image-20211203171743042

找到Deployment加上(注意空格)

deploy:
  type: git
  repo: 你的仓库路径
  branch: master

image-20211203172912784

4、推送hexo站点文件

之后就可以推送博客站点到gitee上了

推送命令
hexo d

扩展:

其中 hexo clean清除了你之前生成的东西,也可以不加。
hexo generate 顾名思义,生成静态文章,可以用 hexo g缩写
hexo deploy 部署文章,可以用hexo d缩写

推送中会要求输入gitee的用户名和密码(如果不想每次都输可以配置ssh,我这里就不做演示了)

image-20211203172705837

然后就可以看到gitee上有推上来的文件了

image-20211203173000651

5、配置Pages服务

目前我们站点还无法访问需要开启Gitee Pages(gitee需要开启,github不需要)

image-20211203200703942

审核通过启动我们就可以访问啦。

image-20211206212207168

image-20211206212550657

gitee上传新文件之后,需要手动更新一下,更新后的页面才会生效

image-20211213110552292

多说一句:如果觉得这个访问路径太长了,我们可以去买一个域名,将该路径绑定到域名上,即可通过域名访问了。

四、GitHub上建站访问

在gitee上建站发现有限制条件,所有也可以采用github建站的方式。

步骤和gitee一样。

1、新建guthub仓库

仓库名称限制了为你的:用户名+.github.io

image-20211203213307819

2、安装hexo上传插件

npm install hexo-deployer-git --save

3、修改hexo配置文件指定仓库路径

可在文件夹中直接打开文件,也可通过vim直接编辑

vim _config.yml #找到Deploymentdeploy:  type: git  repo: 你的github仓库路径  branch: master

image-20211203213606004

4、推送站点到github

推送命令hexo d

推送过程中需要输入你的github用户名和密码。但是在2021年8月14日开始github官方就加强安全访问。不能通过原有账号密码git访问,密码需要用官方的token或者采用ssh公私钥访问。否则会出现下图:鉴权失败(用户名密码错误)

官方原话:

近年来,GitHub 客户受益于 GitHub.com 的许多安全增强功能,例如双因素身份验证、登录警报、经过验证的设备、防止使用泄露密码和 WebAuthn 支持。 这些功能使攻击者更难获取在多个网站上重复使用的密码并使用它来尝试访问您的 GitHub 帐户。 尽管有这些改进,但由于历史原因,未启用双因素身份验证的客户仍能够仅使用其GitHub 用户名和密码继续对 Git 和 API 操作进行身份验证。

从 2021 年 8 月 13 日开始,我们将在对 Git 操作进行身份验证时不再接受帐户密码,并将要求使用基于令牌(token)的身份验证,例如个人访问令牌(针对开发人员)或 OAuth 或 GitHub 应用程序安装令牌(针对集成商) GitHub.com 上所有经过身份验证的 Git 操作。 您也可以继续在您喜欢的地方使用 SSH 密钥

image-20211203212949274

解决方式就是获取token,登录github设置setting->Developer Settings->Prosonal access tokens 创建一个新token。然后就可以拿这个token当密码输入了。

在这里插入图片描述

image-20211203214601302

用户名和token输入后,上传成功。

image-20211203212926297

image-20211203214825635

5、尝试访问

输入你的仓库名称,即可访问成功。

https://lindaifeng.github.io/

image-20211203235634499

五、更换主题

博客样式太死板,想换成属于自己的风格,没问题我们可以更换博客的主题,来达到我们想要的风格。

到GitHub上搜索hexo主题或者hero自带的主题https://hexo.io/themes/。

1、找一个喜欢的。

按照各自的主题文档上面一步步操作即可。

image-20211203230211291

一般步骤:

1、下载解压2、放到主题包themes文件夹下面3、在hero配置文件_config.yml中修改为喜欢主题的名字4、hero server启动即可访问

image-20211203230106211

image-20211203225643736

六、更新仓库

本地调试完之后。就可以更新到github上了

//清理hexo clean//构建静态文件hexo g//上传至仓库hexo d

访问:

image-20211203231900071

七、写文章

在站点文件夹中打开 git ,输入如下命令创建文章,其中 我的第一篇博客 为文章的标题。hexo会在source文件夹下创建一个markdowm的文件。这就是你要编写的文章。

Markdown 是一种可以使用普通文本编辑器编写的 标记语言,通过简单的 标记语法,它可以使普通文本内容具有一定的格式

基于 Markdown 语法的简洁性,它已经成为目前世界上最流行的用于书写博客的语言

$ hexo new "我的第一篇博客"

image-20211203232209412

用软件typora打开直接编写文章

image-20211203233214214

在上传更新到github上立马能够查看到。

//清理hexo clean//构建静态文件hexo g//上传至仓库(上传报错多位网络原因,多上传几次即可)hexo d

image-20211203233439566

image-20211203233119618

草稿箱

很多时候我们需要先写成草稿,而暂时不发布出去。draft page就可以满足我们的要求,我们的网站上是看不到草稿文件的。

//新建草稿文件hexo new draft b//预览草稿文件hexo server --draft//发布草稿hexo publish b

八、新建页面

有时我们不满足主题自由的一些页面,希望自己添加一些页面。

我们可以新建页面,新建页面则会在hexo的source中新建该页面文件并生成md文件,这就是你要编辑的博客页了。

hexo new page "resouces"

image-20211204141837199

然后打开主题的配置文件_config.yml,在菜单属性menu中的添加如下(注意不是Hexo的配置文件)

将页面路径联接到页面上去

菜单自定义名称:/生成的页面名称

image-20211204142517421

当我们点击资源时后会跳转到我们自定义的博客页了(该页面不一样是因为我跟换了主题)

image-20211204142719024

至此Hexo的安装,建站,写博客,更新,新建菜单就全部介绍完毕。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Hexo-零基础搭建个人博客(详解) 的相关文章

  • 如何合并两个连续的 git 存储库

    我有一个相当独特的情况 我有一个名为 Project1 的存储库 我在其中工作了一些时间 几个月 一年后 我创建了存储库 Project1 Again 从 Project1 停止的地方开始 现在 我希望修订历史记录是连续的 因此我希望它们合
  • Jenkins 和 Github 不使用 SSH 密钥

    我已将 Jenkins 设置为从 Github 上的私有存储库中提取特定作业 尽管我已经生成了私钥 公钥并将其作为部署密钥添加到 github 但 Jenkins 似乎并未使用 SSH 密钥 当我从 Jenkins 用户进行 git clo
  • 从 GitHub 上托管的 Spring Cloud Config Server 访问存储库的身份验证问题

    我在 GitHub 上的存储库中托管配置 如果我将回购公开 一切都好 但如果我将其设为私有 我将面临 org eclipse jgit errors TransportException https github com my user m
  • Java Swing For mac 中的 DJ Native Swing 浏览器

    我有一个用 Swing 制作的 Java 应用程序 并且使用了一个 DJ Native Swing 浏览器 当我尝试在 OS X 上使用它时 它抛出了一个NoClassDefFoundError尽管我添加了 swt jar 但始终如此 有人
  • `pyqt5'错误`元数据生成失败`

    我正在尝试安装pyqt5使用带有 M1 芯片和 Python 3 9 12 的 mac 操作系统 我怀疑M1芯片可能是原因 我收到一个错误metadata generation failed 最小工作示例 directly in the t
  • 从 python 检测 macOS 中的暗模式

    我正在编写一个 PyQt 应用程序 我必须添加一个补丁 以便在启用暗模式的 Macos 上可以读取字体 app QApplication Fix for the font colours on macos when running dark
  • 无法从 Sourcetree 拉取 Git 远程存储库

    我生成了 ssh 密钥并配置了我的 git 和 SourceTree 我可以 git pull 并从 Git bash 执行其他操作 注意 我在 bashrc 中添加了以下内容以使其正常工作 eval ssh agent ssh add 然
  • 使用终端时 Git 推送在总计后卡住了?

    我尝试将一些文件推送到Github 总大小只有22 2M 我不知道为什么它在总行之后卡住了 我读过推送到 Github 时 Git 推送挂起 https stackoverflow com questions 16906161 git pu
  • 如何克隆特定的 Git 标签

    From git clone 1 手册页 http git scm com docs git clone branch还可以在结果存储库中的该提交处获取标签并分离 HEAD 我试过 git clone branch
  • 当 .gitattributes 中的 EOL 设置为 CRLF 时,Git diff 认为行结尾为 LF

    当我恢复对带有 Windows 行结尾的文件的更改并且 gitattributes 将 EOL 定义为 CRLF 时 git 认为行结尾已更改为 LR 即使十六进制编辑器显示 CRLF 仅当 gitattributes 定义 EOL 字符时
  • github - 启用分支锁

    作为 GitHub 管理员 我想为所有用户锁定 GitHub 中的特定分支 例如如果我不希望任何人推送到主 生产或项目分支 我该怎么做 有没有办法直接锁定 GitHub 服务器上的分支 而不是使用任何客户端挂钩 是否有任何第三方工具 API
  • Git 提交失败:“请使用 -m 或 -F 选项提供消息。”

    当我键入 git commit 命令来提交文件时 我收到以下错误消息 Microsoft Visual Studio 微软 找不到命令 错误 核心编辑器 Microsoft Visual Studio 存在问题 请使用 m 或 F 选项提供
  • 自定义 SSH 端口上的 Git

    我的 VPS 提供商建议我将 SSH 端口保留为他们默认分配的自定义端口号 不是 22 问题是 虽然我知道我可以在创建远程配置时提供端口号 但在进行 Git 克隆时似乎无法提供相同的操作 我在用gitolite https wiki arc
  • 更新另一个 Action 的工作流程文件的 GitHub Action

    我在同一个存储库中有两个 GitHub Actions 我正在尝试更新其中一个 但在尝试提交并推送更改时出现以下错误 remote rejected HEAD gt some branch refusing to allow a GitHu
  • Git 在哪里存储标签?

    Git 在哪里存储标签 我执行 git tag v0 1 0 v0 10 0 v0 11 0 但目录 git refs tags是空的 Git 将这些标签存储在哪里 谢谢 它们也可以存储在 git packed refs
  • iPad - 无法在框架内滚动

    我无法滚动 iPad Safari 中框架内调用的 pdf 我已经尝试过两件事 2 指滚动 使用对象 嵌入代替框架 但这是行不通的 事实上我已经尝试了很多东西 溢出 高度等等 请帮我 先感谢您 根据这篇文章http support appl
  • C++ 是否可以在 MacOS 上与 OpenMP 和 boost 兼容?

    我现在已经尝试了很多事情并得出了一些结论 也许 我监督了一些事情 但似乎我无法完成我想要的事情 问题是 是否有可能使用 OpenMP 和 boost 在 MacOS High Sierra 上编译 C 一些发现 如果我错了请纠正我 Open
  • Git 更改丢失 - 为什么?

    我们的开发团队正在使用 git 最近我们至少两次丢失了文件更改 我们正在使用私人 Github 存储库 在当前情况下 我们可以返回 Github 上的日志并查看我对文件所做的一些更新 后来 另一位团队成员更改了文件的不同部分 它似乎破坏了我
  • Github - 上传文件

    我正在尝试将文件夹添加到 github 存储库 该文件在 github 上显示为空 并有一个绿色箭头 有谁知道如何解决这个问题 我将不胜感激你的帮助 谢谢 这看起来类似于 Git 如何跟踪未跟踪的内容 https stackoverflow
  • `git push` -- 没有输出,什么也没有发生

    touch test git add test git commit m test git push u origin master 这奏效了 该文件已上传到存储库 rm test cp R website website git rm t

随机推荐

  • String判断非空最全解析

    在校验一个String类型的变量是否为空时 通常存在3中情况 是否为 null 是否为 是否为空字符串 引号中间有空格 如 trim 方法会从一个字符串的两端删除空白字符 常用非空判断方法 String为空的三种状态 null 和new S
  • 找不到msvcp140.dll无法继续执行代码,怎么解决?

    MSVCP140 dll是一个Windows操作系统中的动态链接库文件 它是Microsoft Visual C Redistributable for Visual Studio 2015的一部分 这些库提供了一些C 程序所需的基本功能
  • altium dxp 选定区域铺铜或者填充

    altium dxp 选定区域快速铺铜或者填充 步骤如图 生成完后可以调整到你需要的层即可
  • 【python爬虫】4.爬虫实操(菜品爬取)

    文章目录 前言 项目 解密吴氏私厨 分析过程 代码实现 一 获取与解析 提取最小父级标签 一组菜名 URL 食材 写循环 存列表 代码实现 二 复习总结 前言 上一关 我们学习了用BeautifulSoup库解析数据和提取数据 解析数据的方
  • C++成员函数与非成员函数实现运算符重载

    目录 1 成员函数运算符重载 2 非成员函数 友元函数 运算符重载 3 运算符重载的禁区与规则 成员函数与非成员函数重载区别 区别 两种方式选择 特殊情况 4 运算符重载的禁区和规则 1 成员函数运算符重载 需求 规则 一斤牛肉 2斤猪肉
  • 03 - 大学生如何使用GPT

    大学生如何使用GPT提高学习效率 一 引言 在当今的高速发展的信息时代 大学生面临着越来越多的学习挑战 作为一种先进的人工智能技术 GPT为大学生提供了一种强大的学习工具 本文将介绍大学生在不同场景中如何使用GPT来提高学习效率 并给出一些
  • C++环形缓冲区的简单实现

    分享一个在工作中用到的简单的环形缓冲区 构造简单 可以改造到Qt中使用 也可以直接在VS下使用 所谓环形缓冲区 其实就是带有标识缓冲区中数据头 尾位置的缓冲区 这个缓冲区根据业务的不同 要设置的稍微大一点 不能一有数据过来就填满了 这样就失
  • SpringBoot整合常用Json框架-基础篇

    1 本篇概要 本文主要介绍如何在Spring Boot中整合3种常用的Json框架 包含Spring Boot本身提供的Jackson和Gson 以及国内常用的阿里巴巴开源Fastjson的整合 2 Json框架整合 2 1 整合 Jack
  • 一阶RC滤波器的算法实现(低通和高通)

    目前 项目需要处理信号 目标信号是特定频率范围内的信号 高频视为干扰 而一阶RC滤波器容易实现 但是网上资料往往没有详细的推导 因此在这里把笔记记下 本文的优势是比较详细 参数配置都有公式依据 目录 1 一阶RC低通滤波器的算法实现 1 1
  • 漏洞扫描器 XRAY

    文章目录 XRAY简介 XRAY安装 XRAY使用 爬虫模式 被动扫描 生成 ca 证书 开启监听 浏览器设置代理 访问网站自动探测漏洞 BurpSuite联动XRAY xray 开启端口监听 burpsuite 设置 通过burp sui
  • js 实现汉字简体和繁体之间的互相转换

    简体字 简体字 Simplified Chinese 简体中文 是中国大陆地区目前在用的字体 由官方公布的简体字 主要由传承字以及1950年代以后中华人民共和国政府开始在中国大陆地区推行的简化字所组成 目前 简体字的使用地区包括中国大陆 联
  • C++ 保存txt文本文件

    第一步 包含头文件 include
  • ExtJS 容器布局方式

    ExtJS是构建浏览器应用界面的框架 为开发人员提供了丰富UI组件 这些组件在页面中是以特定方式排列的 即布局方式 一个ExtJS构建的页面 无论看起来多么复杂 最终都能根据其布局拆分成许多小的区域 最近工作中的项目比较老旧 使用的是3 0
  • vue子组件向父组件传值的方法

    子组件向父组件 使用 emit方法 demo 子组件的代码
  • 【手把手 带你准备电赛】解答小课堂——串口通信和串行通信

    目录 串口通信和串行通信的定义 串口通信和串行通信的区别 串口通信和串行通信的联系 串口 串行 你分清楚这两个概念了吗 是不是还是串什么通信 串行通信 什么串口 不要担心 这篇文章 小蛋糕带你深入浅出分清串口通信和串行通信 串口通信和串行通
  • k线图中趋势线的画法精讲

    曾经有技术分析师大师把技术分析概括为一句话 那就是 一把直尺走天下 这是画线分析方法的直观和有效的高度概括 在众多的画线方法中 趋势线用以衡量贵金属的价格趋势 通过趋势线的方向可以明确地看出价格变动的方向 一 上升趋势线的画法 在上升趋势中
  • Ubuntu下pycharm的安装和卸载

    pycahrm安装 首先要去pycharm的官方网站下载Linux版本的pycharm安装包 如果想要下载以前版本的pycharm可以登录下方的网站去下载 https www jetbrains com pycharm download o
  • 按摩软件仿东郊到家系统开发,上门预约系统;

    按摩软件仿东郊到家系统开发 上门预约系统 用户端 技师端 商家端 以及管理后台 上门预约的操作 1 技师管理 技师满意度进行统一跟踪评估 进行分级管理 分级评估 2 订单管理 按订单状态分类筛选 安装进度一目了然 3 智能派单 根据客户位置
  • 64位机器源码安装遇到的问题,解决,一锅端

    1 如果是centos5会出现如下问题 checking host system type Invalid configuration x86 64 unknown linux gnu machine x86 64 unknown not
  • Hexo-零基础搭建个人博客(详解)

    Hexo零基础搭建个人博客 Hexo是一个基于 node js的快速生成静态博客的开源框架 支持 Markdown和大多数 Octopress 插件 一个命令即可部署到 Github页面 Giteee Heroku等 强大的APl 可无限扩