关于hexo的笔记 以及 常见问题

2023-11-13

在 Hexo 中有两份主要的配置文件,其名称都是 _config.yml 。

其中,一份位于站点根目录下(/blog/_config.yml),主要包含 Hexo 本身的配置;另一份位于主题目录下(/blog/themes/next/_config.yml),这份配置由主题作者提供,主要用于配置主题相关的选项。

我们约定,将前者称为 站点配置文件,后者称为 主题配置文件。 

本地调试步骤

三部曲:

$ hexo clean
$ hexo g
$ hexo s --debug

这种带 debug 的运行,如果出现错误,可以在命令行中看到错误提示信息。

部署步骤

三部曲:

$ hexo clean
$ hexo g
$ hexo d

当然在部署之前,需要先配置好配置文件中的 deploy。

常用命令

$ hexo new "postName"  #新建文章
$ hexo new page "pageName" # 新建页面
$ hexo generate # 生成静态页面至public目录
$ hexo server # 开启预览访问端口(默认端口4000,'ctrl+c'关闭server)
$ hexo deploy # 项目部署
$ hexo help # 查看帮助
$ hexo version # 查看Hexo的版本

关于 Git 提交中用户名和 Email 的设置

git config --global user.name "Your name"
git config --global user.email "Your email"

 

简写命令

$ hexo n  # 等同于 hexo new
$ hexo d  # 等同于 hexo deploy
$ hexo g  # 等同于 hexo generate
$ hexo s  # 等同于 hexo server
$ hexo d -g # 等同于 hexo deploy + hexo generate

编写文章

引用一段来自官方的文档 > 你可以执行下列命令来创建一篇新文章。

> $ hexo new [layout] <title>

> 您可以在命令中指定文章的布局(layout),默认为 post,可以通过修改 _config.yml 中的 default_layout 参数来指定默认布局。

创建文章后,可以看见 source\_posts\ 下有一篇新建的以 .md 为后缀文章 打开它可以看见

---
title: hello-world //在此处添加你的标题。
date: 2014-11-7 08:55:29 //在此处输入你编辑这篇文章的时间。
categories: Exercise //在此处输入这篇文章的分类。
toc: true //在此处设定是否开启目录,需要主题支持。
---

在之后空白的地方用 Markdown 编写文章。

常见问题1

在 hexo 的配置和设置文件中,在冒号后面没留空格会导致出问题:
错误的设置:

author:xxx
email:xxx@gmail.com
language:zh-CN

正确的设置:

author: xxx
email: xxx@gmail.com
language: zh-CN

常见问题2

每次Hexo部署完毕后,访问先前设置好的Custom Domain,都会提示404。
查看GitHub仓库(Repository)的设置(Settings),发现自定义域名(Custom Domain)已经变成默认值(被清空)。                    GitHub的自定义域名(Custom Domain)是通过master分支(branch)下的CNAME文件设置的。

原因分析

Hexo每次部署时,会先删除分支(branch)下的所有文件,再提交生成后的文件。在删除文件时,CNAME文件也被删除,造成自定义域名(Custom Domain)变成默认值(被清空)。

解决思路

  1. 设置自定义域名(Custom Domain),观察文件变动。
  2. 使Hexo部署时模仿文件变动。

操作记录

  1. 在GitHub仓库(Repository)的设置(Settings)页面,设置自定义域名(Custom Domain)为www.flowerdeer.xyz
  2. 发现master分支(branch)下新建了一个CNAME文件
  3. 查看CNAME文件内容,CNAME文件内容为先前设置的自定义域名(Custom Domain):www.flowerdeer.xyz
  4. 在Hexo的source目录下新建一个CNAME文件,内容为自定义域名(Custom Domain):www.flowerdeer.xyz
  5. 重新使用Hexo部署,问题解决。

常见问题3

如何删除文章?

删除文章的过程一样也很简单,先删除本地文件,然后通过生成和部署命令进而将远程仓库中的文件也一并删除。具体来说,以最开始默认形成的helloworld.md这篇文章为例。

首先进入到存放hexo的文件夹,找到source / _post 文件夹中,找到后缀为.md文件,在本地直接执行删除。然后依次执行hexo g -d,再去主页查看你就会发现你的博客上面已经空空如也了。

常见问题4

关于SSL证书上传问题

github和coding,都不支持上传ssl证书。但是,gitlab支持啊!

常见问题5

关于乱码问题

将博客文件保存为UTF-8即可解决问题。

方法:

    1.将博客文件保存为UTF-8

     用记事本打开本地的博客文件“xxx.md”,然后点“另存为”,“编码(E):”选择“UTF-8”,

点击“保存”,替换原文件。

    2.重新生成,部署,博客乱码即消除。

常见问题6

关于网站被认定HTTPS存在中间人攻击,关闭github代码仓库中HTTPS选项(https://github.com/xxxx/xxxx.github.io/settings/pages),在重新打开,并使用dig命令获取最新的DNS信息,并在域名管理中心进行修改。

https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site

https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site 

 

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

关于hexo的笔记 以及 常见问题 的相关文章

随机推荐

  • ndk-build编译64位.so,出现ndk error: cast from 'int*' to 'int' loses precision [-fpermissive]

    这是因为Linux 64位系统上指针类型占用8个字节 而int类型占用4个字节 所以会出现loses precision 可以先将int 转成long类型 long类型可以隐式类型转换到int类型 如下 int func int p p 赋
  • 【vue】websocket封装&使用

    本文章向大家介绍使用websocket 主要包括使用websocket使用实例 应用技巧 基本知识点总结和需要注意事项 具有一定的参考价值 需要的朋友可以参考一下 小程序封装sokect传送门 创建一个websocket js utils
  • C++基础——匿名对象介绍、拷贝对象时的一些编译器优化

    目录 创建对象的几种方式 匿名对象的创建格式 二 编译器对于拷贝对象做出的优化 场景一 检测 优化 检测 场景二 检测 优化 场景三 检测 优化 场景四 优化 检测 整体优化总结 通过C 长时间的学习 我们已经学会了好多通过类定义对象的方法
  • 深入探究Selenium定位技巧及最佳实践

    在使用Selenium进行Web自动化测试时 准确地定位元素是非常重要的一步 Selenium提供了多种元素定位方法 本文将深入探究这八大元素定位方法 帮助读者更好地理解和应用Selenium的定位技巧 1 ID定位 ID是元素在HTML中
  • JAVA的类加载机制

    类加载机制 参考 https blog csdn net zhangliangzi article details 51319033 https www jianshu com p 3556a6cca7e5 https blog csdn
  • 以promise方式调用微信小程序的api

    仅仅适用于部分API需要用到promise方式调用 封装一个方法如下 export const promisify method options gt return new Promise resolve reject gt 将option
  • 用c语言编写lr(1)文法,C语言编写源程序建立LR(1)分析器.pdf

    目 录 前 言2 用C语言编写源程序建立LR 1 分析器3 一 设计目的 要求 算法与设计思想3 1 设计内容3 2 设计要求3 3 设计的基本原理3 1 CLOSURE I 的构造3 2 GO I X 的构造3 3 FIRST集合的构造4
  • Android屏幕适配全攻略(最权威的官方适配指导)

    转载请注明出处 http blog csdn net zhaokaiqiang1992 Android的屏幕适配一直以来都在折磨着我们这些开发者 本篇文章以Google的官方文档为基础 全面而深入的讲解了Android屏幕适配的原因 重要概
  • Java for Web学习笔记(五九):Controller替代Servlet(1)请求匹配

    URL匹配 书写方式 是对DispatcherServlet所匹配的URL进行二次匹配 本例DispatcherServelt的servlet mapping中
  • Echarts隐藏坐标轴

    xAxis show false 不显示坐标轴线 坐标轴刻度线和坐标轴上的文字 axisTick show false 不显示坐标轴刻度线 axisLine show false 不显示坐标轴线 axisLabel show false 不
  • GNU许可证常见问题

    最新在学习开源软件 开源软件的组成最重要的一个就是license 及许可证 开源License在法律上赋予用户相关权利和义务 任何开源应用行为都必须围绕此 游戏规则 进行 其中重点学习了GUN GPL的许可证 本地记录下一个重要的网站 方便
  • 数据库出错提示Duplicate entry * for key *的解决方法

    错误编号 1062 错误提示 查询语句错误 1062 ERR Duplicate entry 16777215 for key PRIMARY SQL INSERT INTO forum attachment SET tid 0 pid 0
  • 揭秘Kaggle神器xgboost

    在 Kaggle 的很多比赛中 我们可以看到很多 winner 喜欢用 xgboost 而且获得非常好的表现 今天就来看看 xgboost 到底是什么以及如何应用 本文结构 什么是 xgboost 为什么要用它 怎么应用 学习资源 什么是
  • CROSS使用说明书 发行和拍卖NFT完整攻略

    鉴于目前去中心化NFT发行和拍卖平台CROSS是英文版本 对部分中国区用户存在操作困难 为了方便投资者和NFT爱好者能及时了解CROSS的相关信息和使用流程 现在CyberVein推出了更加详细的CROSS完整版教程 若还存有疑问 可添加中
  • windows7虚拟拔号服务器,ADSL采用虚拟拨号上网,使用Windows 7如何设置PPPoE宽带连接...

    今天介绍ADSL采用虚拟拨号上网 使用Windows 7操作系统如何设置PPPoE宽带连接 连接网络的方式有很多 现在小伙伴们上网使用的连接方式主要有以下几种 ADSL宽带上网 小区宽带上网 无线局域上网和无线移动上网 其中ADSL宽带上网
  • 使用Python实现二分查找算法及其应用场景详解

    引言 二分查找是一种常用的搜索算法 它可以在有序数组中高效地查找指定元素 本文将详细介绍二分查找算法的原理 实现方法 并探讨其在实际应用场景中的使用 通过深入了解二分查找算法 你将能够更好地理解它的工作原理并灵活应用于各种问题中 目录 引言
  • 像打王者荣耀一样的学习/工作?(转)

    https blog csdn net dataiyangu article details 97544551 depth 1 utm source distribute pc feed none task blog alirecmd 2
  • GET和POST的区别,java模拟postman发post

    题解 空心正方形图案 include
  • MFC对话框中屏蔽Enter键与ESC键

    文章内容无意义 存档用 MFC对话框应用程序中 按下回车键或者ESC键 对话框会自动关闭 原因在于 当用户按下Enter键时 Windows就会自动去查找 输入焦点 落在了哪一个按钮上 获得焦点的按钮的四周将被点线矩形框所包围 如果所有按钮
  • 关于hexo的笔记 以及 常见问题

    在 Hexo 中有两份主要的配置文件 其名称都是 config yml 其中 一份位于站点根目录下 blog config yml 主要包含 Hexo 本身的配置 另一份位于主题目录下 blog themes next config yml