hexo博客搭建及主题优化(三)

2024-08-26 14:48
文章标签 优化 搭建 博客 hexo 主题

本文主要是介绍hexo博客搭建及主题优化(三),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

个人博客

个人博客: https://www.crystalblog.xyz/

备用地址: https://wang-qz.gitee.io/crystal-blog/

HexoBlog

  • 个人博客
    • 主题优化三
      • 44. Gitee+PicGo图床
      • 45. 文件压缩
      • 46. 绑定自定义域名
      • 47. SEO优化
    • Front-matter
      • Front-matter 选项详解
      • 最全示例

上篇hexo博客搭建及主题优化(二)

主题优化三

44. Gitee+PicGo图床

markdown写博客时粘贴图片都是自动生成的本地图片链接, 当部署到服务器上时, 无法读取到我们本地环境的图片地址, 网上解决方案比较多且推荐的是采用图床, 就是将本地图片上传到网络端的图片服务器中, 然后在写博客时引用网络地址, 读取网络图片的方式展示. 推荐的图床:

SM.MS , 七牛图床 , 路过图床, 去不图床 , 晚风图床

也可以使用gitHub或gitee做图床服务器, 由于gitHub访问速度慢, 我采用的是Gitee+PicGo搭建的图床服务器.

搭建细节就不陈述了, 下面给出参考资料:

Typora 使用 gitee 作为图床

Gitee + Typora,论如何搭建你的免费图床

图床方案之(Gitee+PicGo)

45. 文件压缩

压缩静态文件可以提高静态博客的页面加载速度, 下面提供两种文件压缩方式.

hexo-neat压缩参考资料: https://blog.csdn.net/weixin_41287260/article/details/99687257

gulp压缩参考资料: https://blog.csdn.net/ganzhilin520/article/details/79052512

gulp压缩报错AssertionError: Task function must be specified : https://blog.csdn.net/weixin_30338743/article/details/97960197

我使用的是hexo-neat方式, 使用简单.

46. 绑定自定义域名

为自己的博客申请自定义域名, 我在腾讯云平台购买的域名, 在阿里云平台或其他平台购买都可以. 进入腾讯云域名控制台 , 就会看到我注册的域名:

image-20210914203719272

然后点击解析进入域名解析控制台, 添加记录, 看我的解析配置:

image-20210914204014844

域名解析主要配置项的含义是:

主机记录 :

  • @ 表示直接解析主域名 crystalblog.xyz
  • www 表示将域名解析为 www.crystalblog.xyz

记录类型:

  • CNAME 将域名指向另一个域名地址,与其保持相同解析,如 https://www.crystalblog.xyz

记录值:

  • wang-qz.github.io.是我部署在gitHub的默认域名, 上图表示将域名https://www.crystalblog.xyz解析到https://wang-qz.github.io/
  • 185.199.111.153是我部署在gitHub的实际服务器地址, 可以通过命令行ping wang-qz.github.io获取, 表示将域名crystalblog.xyz解析到https://185.199.111.153/, 下面是我引用的博友的图片作为参考:

获取gitHub服务地址

hexo博客配置CNAME, 在hexo博客的source目录下,创建一个名为CNAME的文件(注意要大写),内容写之前购买的域名。下面是我引用的博友的图片作为参考:

hexo博客CNAME配置

注:如果不做这一步,每次hexo d部署到github上以后,对应仓库的域名设置里的域名会被重置回原来的username.github.io,你需要再次设置成你的域名,很麻烦。

hexo博客根目录下的_config.yml文件中配置域名:

# URL
## Set your site url here. For example, if you use GitHub Page, set url as 'https://username.github.io/project'
## 自定义域名, 目前是部署到gitHub上面解析自定义域名的, gitee个人版不支持自定义域名
url: https://www.crystalblog.xyz
## gitee
#url: https://wang-qz.gitee.io/crystal-blog
## github
#url: https://wang-qz.github.io/

最后进入gitHub部署的博客仓库设置域名, 下面是我引用的博友的图片作为参考:

hexo博客GitHub设置域名

另外,在你绑定了新域名之后,gitHub原来的默认域名https://wang-qz.github.io/并没有失效,而是会自动跳转到你的新域名https://www.crystalblog.xyz。

最后附上hexo域名绑定参考资料https://zhuanlan.zhihu.com/p/338299590

47. SEO优化

SEO(Search Engine Optimization):汉译为搜索引擎优化。是一种方式:利用搜索引擎的规则提高网站在有关搜索引擎内的自然排名。 ——百度百科

参考资料1: https://www.zyskys.com/posts/60945

参考资料2: https://blog.csdn.net/lzy98/article/details/81140704

Front-matter

Front-matter 选项详解

Front-matter 选项中的所有内容均为非必填的。但仍然建议至少填写 titledate 的值。

配置选项默认值描述
titleMarkdown 的文件标题文章标题,强烈建议填写此选项
date文件创建时的日期时间发布时间,强烈建议填写此选项,且最好保证全局唯一
author_config.yml 中的 author文章作者
imgfeatureImages 中的某个值文章特征图
toptrue推荐文章(文章是否置顶),如果 top 值为 true,则会作为首页推荐文章
coverfalse表示该文章是否需要加入到首页轮播封面中
coverImg表示该文章在首页轮播封面需要显示的图片路径,如果没有,则默认使用文章的特色图片
password文章阅读密码,如果要对文章设置阅读验证密码的话,就可以设置 password 的值,该值必须是用 SHA256 加密后的密码,防止被他人识破。前提是在主题的 config.yml 中激活了 verifyPassword 选项
toctrue是否开启 TOC,可以针对某篇文章单独关闭 TOC 的功能。前提是在主题的 config.yml 中激活了 toc 选项
mathjaxfalse是否开启数学公式支持 ,本文章是否开启 mathjax,且需要在主题的 _config.yml 文件中也需要开启才行
summary文章摘要,自定义的文章摘要内容,如果这个属性有值,文章卡片摘要就显示这段文字,否则程序会自动截取文章的部
tags文章标签,一篇文章可以多个标签
categories文章分类,本主题的分类表示宏观上大的分类,只建议一篇文章一个分类
keywords文章标题文章关键字,SEO 时需要
reprintPolicycc_by文章转载规则, 可以是 cc_by, cc_by_nd, cc_by_sa, cc_by_nc, cc_by_nc_nd, cc_by_nc_sa, cc0, noreprint 或 pay 中的一个

注意:

  1. 如果 img 属性不填写的话,文章特色图会根据文章标题的 hashcode 的值取余,然后选取主题中对应的特色图片,从而达到让所有文章都的特色图各有特色。

  2. date 的值尽量保证每篇文章是唯一的,因为本主题中 Gitalk 和 Gitment 识别 id 是通过 date 的值来作为唯一标识的。

  3. 如果要对文章设置阅读验证密码的功能,不仅要在 Front-matter 中设置采用了 SHA256 加密的 password 的值,还需要在主题的 _config.yml 中激活了配置。有些在线的 SHA256 加密的地址,可供使用:开源中国在线工具、chahuo、站长工具。

  4. 您可以在文章md文件的front-mater中指定reprintPolicy来给单个文章配置转载规则.

最全示例

---
title: 基于Hexo的hexo-theme-matery主题搭建博客并优化
date: 2019-10-03 14:25:00
author: 悟尘
img: /source/images/xxx.jpg
top: true
cover: true
coverImg: /images/1.jpg
password: 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92
toc: false
mathjax: false
summary: 这是你自定义的文章摘要内容,如果这个属性有值,文章卡片摘要就显示这段文字,否则程序会自动截取文章的部分内容作为摘要
categories: 工具
tags:- blog- hexo
---

这篇关于hexo博客搭建及主题优化(三)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1108866

相关文章

C#使用HttpClient进行Post请求出现超时问题的解决及优化

《C#使用HttpClient进行Post请求出现超时问题的解决及优化》最近我的控制台程序发现有时候总是出现请求超时等问题,通常好几分钟最多只有3-4个请求,在使用apipost发现并发10个5分钟也... 目录优化结论单例HttpClient连接池耗尽和并发并发异步最终优化后优化结论我直接上优化结论吧,

Java内存泄漏问题的排查、优化与最佳实践

《Java内存泄漏问题的排查、优化与最佳实践》在Java开发中,内存泄漏是一个常见且令人头疼的问题,内存泄漏指的是程序在运行过程中,已经不再使用的对象没有被及时释放,从而导致内存占用不断增加,最终... 目录引言1. 什么是内存泄漏?常见的内存泄漏情况2. 如何排查 Java 中的内存泄漏?2.1 使用 J

MySQL不使用子查询的原因及优化案例

《MySQL不使用子查询的原因及优化案例》对于mysql,不推荐使用子查询,效率太差,执行子查询时,MYSQL需要创建临时表,查询完毕后再删除这些临时表,所以,子查询的速度会受到一定的影响,本文给大家... 目录不推荐使用子查询和JOIN的原因解决方案优化案例案例1:查询所有有库存的商品信息案例2:使用EX

MySQL中my.ini文件的基础配置和优化配置方式

《MySQL中my.ini文件的基础配置和优化配置方式》文章讨论了数据库异步同步的优化思路,包括三个主要方面:幂等性、时序和延迟,作者还分享了MySQL配置文件的优化经验,并鼓励读者提供支持... 目录mysql my.ini文件的配置和优化配置优化思路MySQL配置文件优化总结MySQL my.ini文件

Mycat搭建分库分表方式

《Mycat搭建分库分表方式》文章介绍了如何使用分库分表架构来解决单表数据量过大带来的性能和存储容量限制的问题,通过在一对主从复制节点上配置数据源,并使用分片算法将数据分配到不同的数据库表中,可以有效... 目录分库分表解决的问题分库分表架构添加数据验证结果 总结分库分表解决的问题单表数据量过大带来的性能

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

正则表达式高级应用与性能优化记录

《正则表达式高级应用与性能优化记录》本文介绍了正则表达式的高级应用和性能优化技巧,包括文本拆分、合并、XML/HTML解析、数据分析、以及性能优化方法,通过这些技巧,可以更高效地利用正则表达式进行复杂... 目录第6章:正则表达式的高级应用6.1 模式匹配与文本处理6.1.1 文本拆分6.1.2 文本合并6

基于Qt实现系统主题感知功能

《基于Qt实现系统主题感知功能》在现代桌面应用程序开发中,系统主题感知是一项重要的功能,它使得应用程序能够根据用户的系统主题设置(如深色模式或浅色模式)自动调整其外观,Qt作为一个跨平台的C++图形用... 目录【正文开始】一、使用效果二、系统主题感知助手类(SystemThemeHelper)三、实现细节

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE