hexo部署和优化记录
title: hexo部署和优化记录
date: 2020-06-14 09:00:03
- 前端
tags: - hexo
summary: Repository_Pages使用、Github仓库打造网页群
一、准备软件
- Git 进行部署
- NVM 用于安装和管理各个版本的nodejs
- Sublime 编辑这种多个文件夹的非常棒的编辑器
- everthing 方便查找,其实这个不是必须的
二、hexo常用命令
- hexo clean 清除缓存文件
db.json
和已生成的静态文件public
- 网站显示异常时可以执行这条命令试试,比如,网站的标签和分类没有及时更新
- hexo g && hexo s -p 5555 用本地的5555端口,进行本地调试
- hexo clean && hexo g && hexo d 上传到github
- hexo new page "tags" 新建标签
- hexo new test 新建一篇博客,名字叫test.md
三、Hexo优化
(1)hexo域名解析
hexo域名解析,图床搭建,文章聚集
1、准备
1)域名
比如我的hacv.xyz
2)hexo新建CNAME
在blog\source文件夹下新建文件CNAME(在此新建文件,可以保证hexo d的时候不会删除掉),文本打开编辑,添加个人购买的域名,例如hacv.xyz
还需要继续整理完
(2)个人Markdown图片腾讯云做图床
参考博客https://www.cnblogs.com/asheng2016/p/9572128.html
此外,为了便于后续扩展,以后博客中插入图片前,要讲图片编号附上
比如图片2020_06_12_Flexible Array_01.gif
便于后续可能的迁移
以后上传博客图床就去腾讯云了https://cloud.tencent.com/
用法和百度网盘用法似的,蛮好的
(3)hexo 博客发布时间调整和文章聚集
本hexo中,文章发布的时间可以修改
title: Hexo优化
date: 2020-06-29 21:03:09
//本来这是07-01的文章,但是修改前面的日期可以调整文章摆放文章,使文章集中化。
categories:
- 随笔
tags:
- hexo
自行应用page写博客比CSDN写就更加注重自己的文章的聚集方式了。
(4)百度URL提交
百度站长传送门:https://ziyuan.baidu.com
我采用的HTML认证。
找到“layout.ejs’”
或者“layout.png”
这样名称为layout的文件,打开将复制的内容黏贴进去保存。
三、Github仓库打造网页群
github单个仓库打造网页群,Repository_Pages仓库pages的使用
(1)Github pages的两种类型
Project Pages(Repository Pages)
比如https://hacv.github.io/Test/
User Pages
https://hacv.github.io
本想使用github任何一个仓库,打造一个网站群
但是,后面发现,我将本地的.md编译为html静态网站之后
无论用git还是hexo发布当仓库中去(注意,我特别没有使用.io的,毕竟那个每个github只能一个)
而我想要的是,能够用来专门表现任何单个仓库的网页
Github Pages的限制
Github Pages只是静态网站(HTML, CSS, JavaScript)
没有服务端,所以不支持服务端的语言(没有ruby, php, python)
三种静态站点生产机器
Jekyll、Hugo、Hexo
是简单的博客形态的静态站点生产机器。它有一个模版目录,其中包含原始文本格式的文档,通过 Markdown 以及 Liquid 转化成一个完整的可发布的静态网站,你可以发布在任何你喜爱的服务器上。- Jekyll、Hugo、Hexo 也可以运行在 码云(Gitee.com) Pages 上,也就是说,你可以使用码云的服务来搭建你的仓库页面、博客或者网站,而且是完全免费
四、hexo部署我的第2个网站
(1)电脑已有环境(重要)
- Node.js配置,hexo配置,npm配置
等,参见https://www.bilibili.com/video/BV1cW411A7Jx
- 已经有一个部署到
https://hacv.github.io
的网站
注意:每个Github账户都可以开一个自己的静态网站(域名为 username.github.io)
(2)部署新的网站到github其他仓库
使用 域名如下:
https://hacv.github.io/Test/
(3)操作(难点)
难点:解决github的层叠样式表(CSS)的那个加载不出的两种方法
解决方案参考的链接:https://segmentfault.com/q/1010000002924963
- 1)买域名。
- Hacv.xyz解析,去单个仓库中,改setting为这个,解析能成功
缺点:那我要是想要为多个仓库分别展示,岂不是要买很多域名,不经济- 此外,绑定这些,还可以用
CNAME
等解决,(这个方法,我以前是用来解析hacv.xyz
的,后来发现,直接改setting比这个快多了。)但是,那个不够直观,我就不用了
- 2)利用在项目设置
CNAME
可以解决- 在
CNAME
中,写上我的那个仓库https://hacv.github.io/Test/
- 然后,我把这个提交到我的那个文档中去,就好了
- 3)似乎改某些源代码可以,但我不主攻前端。
Tips:有的hexo主题,不能这么弄,就算是hacv.xyz也解析不出的,那种是由于生成的静态文件等,比如:skapp主题,你还需要按照它的装一些其他的才行。
但是这主题是可以的:shoka(但是很卡)
详细操作:
一、本地部署
1)先创建一个文件夹,然后cd到那里,由于已经装好Hexo了,也就是我以前进行了npm install -g hexo-cli
2)hexo init Test
这样就会按照我设置的博客名进行配置了(初始化)
这样会在你当前文件夹下创建一个文件夹,名字为Test,这个文件夹里面有hexo给你下载的最开始默认的版本
在themes中,很显然有默认的Next主题(我们到时候去hexo官网下载其他主题,其实就是为了修改这个文件夹的)
3)安装依赖(此处可以暂时不弄)
cd 进入Test
然后npm install
常见依赖
$git clone git@github.com:yscoder/hexo-theme-indigo.git themes/inidgo
$npm install hexo-renderer-less --save #安装less,作为css的预处理工具
$npm install hexo-generator-feed --save #安装rss的feed生成工具
$npm install hexo-generator-json-content --save #用于生成静态站点数据,用于站内搜索的数据源
$npm install hexo-helper-qrcode --save #用于生成微信分享二维码
4)本地运行测试
hexo g
hexo s -p 3333
至此,本地原始博客测试完毕
可以在本地localhost:3333
中看到我们的网站
二、修改主题
可以参考本文的,修改部分
https://www.jianshu.com/p/ef07bdcde72e
PS:
1)他使用的git clone下载
笔者喜欢自己找hexo官网,选择自己喜欢的,然后去对应的github仓库,自己下载那个zip
然后解压,放进主题文件夹中
2)注意事项,我的这种解压后文件夹名字叫
hexo-theme-diaspora-master
我需要手工将其他的去掉,只剩下diaspora
,否则会出错
3)一定要修改Test文件夹(注意,不是主题文件夹)中的_config.yml
将theme: next
改为你刚刚下载的,重命名好的文件夹的名字
比如theme: diaspora
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: shoka
修改完之后,你就可以hexo clean && hexo g && hexo s -p 5555
看最新的主题了。
注意,这个时候,原先的next主题那个文件夹,其实是可以删了。
三、上传到github部署
- 0)很重要的一部分:部署上去之前,还需要配置Test文件夹(注意:不是主题文件夹)中
_config.yml
(deploy,是部署的意思)
deploy:
type: git #这个是指定,我hexo上传是借助的hexo和git
repo: https://github.com/HACV/Test.git #这个是指定你需要上传的仓库的位置(比如,我的HACVgithub下,我创建的Test仓库)
branch: master #这个表示,你将这个上传到你的Test仓库的
- 2)在Test文件夹下创建一个没有后缀的
CNAME
在这个里面写上,那个文件中写上,到时候你的仓库中设置的setting中的域名
比如https://hacv.github.io/Test/
- 3)在你要上传的
- 1)
Hexo g
hexo generate, 也可以用缩写hexo g生成静态页面
//在本地生成静态文件,毕竟hexo是静态站点生产机器,而且,网站是需要生产的HTML才能展示的,所以我们的github上没有.md那些是可以的,但是这个也告诉我们,需要对自己写的.md进行备份- 2)
Hexo d
和hexo deploy
是一样的,根据_config
中的deploy
区域,进行上传
- 上传到github
- (在进行,hexo d之前,记得安装hexo deploy插件,记得先在这个文件夹
npm install --save hexo-deployer-git
)
- 虽然,我以前装
github.io
的时候,也有弄过这个,但是似乎,这个是每个文件夹
都要这样,才能面向这个文件夹进行这些事情。- 3)记得去
(4)其他网站
hexo官方文档,讲解得很清晰了
https://hexo.io/zh-cn/docs/configuration.html
hexo部署到国内的gitee
https://www.cnblogs.com/zhengqing/p/11150687.html
我的第一个博客配置和这个视频的差不多
https://www.bilibili.com/video/BV1cW411A7Jx?p=1
(5)比如可以这么设置
- (唯一user Pages)博客网站——本网站
- (Github Pages)Coding网站——PAT,Leetcode,CSP
- (Github Pages)计算材料学网站
五、hexo安装插件
- 原理:借助装完nodejs之后有的npm工具
(1)安装emoji插件
npm install hexo-filter-github-emojis --save
Add configuration of _config.yml
file in Hexo root folder as follows:
githubEmojis:
enable: true
className: github-emoji
inject: true
styles:
customEmojis:
然后就可以
:smile::smile::smile:
hexo部署和优化记录的更多相关文章
- 优化hexo访问速度-将hexo部署到云主机VPS
写在开始 一开始将自己hexo部署到github,结果发现打开页面速度有点慢,然后又将其同时部署到coding,实现双线路访问,国内解析记录到coding,国外解析到github,这样确实网站的速度能 ...
- hexo部署
title: hexo 部署(一) date: 2018-09-16 18:01:26 tags: hexo部署配置 categories: 博客搭建 hexo博客搭建 折腾了好久的时间,终于使用he ...
- Tomcat服务部署及优化
Tomcat 服务部署及优化 1.Tomcat简介 2.Tomcat 服务安装及部署 3.Tomcat虚拟主机配置 4.Tomcat 优化 1.Tomcat简介: 概述: Tomcat是Java语言开 ...
- Hexo博客搭建记录
Hexo博客搭建记录 参考视频:手把手教你从0开始搭建自己的个人博客 |无坑版视频教程 以下命令操作建议使用管理员权限完成 1. nodejs & hexo 安装 1.首先下载node.js, ...
- 针对github权限导致hexo部署失败的解决方案
hexo deplay出错,没有反应 今天想在自己的另一个博客地址(链接地址)上更新一下博客,没想到hexo deplay没有反应,以下是解决过程:(更新于 2016-12-24 11:17:43) ...
- VS2010/2012配置优化记录笔记
VS2010/2012配置优化记录笔记 在某些情况下VS2010/2012运行真的实在是太卡了,有什么办法可以提高速度吗?下面介绍几个优化策略,感兴趣的朋友可以参考下,希望可以帮助到你 有的时候V ...
- [原创]CI持续集成系统环境---部署Jenkins完整记录
Jenkins通过脚本任务触发,实现代码的自动化分发,是CI持续化集成环境中不可缺少的一个环节. 下面对Jenkins环境的部署做一记录. ------------------------------ ...
- hexo部署到gitcafe上静态博客
http://zanderzhang.gitcafe.io/2015/09/17/hexo部署到gitcafe上静态博客/ hexo这些事儿,zippera's blog,之类的,这些都说的很清楚了. ...
- 用nodejs安装hexo,将hexo部署到github
跌跌撞撞写这篇博文,希望下一篇可以好点 运行环境:最新版本的nodejs + git 安装好nodejs 和 git ,注册好github账号,新建仓库****.github.io(****为gith ...
- React性能优化记录(不定期更新)
React性能优化记录(不定期更新) 1. 使用PureComponent代替Component 在新建组件的时候需要继承Component会用到以下代码 import React,{Componen ...
随机推荐
- JAVA虚拟机11-Class文件结构
1.平台无关性和语言无关性 Oracle公司以及其他虚拟机发行商发布过许多可以运行在各种不同硬件平台和操作系统上的Java虚拟机,这些虚拟机都可以载入和执行同一种平台无关的字节码,从而实现了程序的&q ...
- RxJava 异常时堆栈显示不正确?解决方法都在这里
本文首发我的博客,github 地址 大家好,我是徐公,今天为大家带来的是 RxJava 的一个血案,一行代码 return null 引发的. 前阵子,组内的同事反馈说 RxJava 在 debug ...
- axios实现跨域的问题 vue实现跨域
第一次写博客,主要是记录自己的一些新的,不好的地方忘各位多多指点,请不要吐槽: 按踩坑顺序叙述.本人对http了解太少,所以坑踩得较多. 1.开始进行跨域时,知道vue2.0官方推荐axios进行aj ...
- kali挂代理之——proxychains4
记一次打站需要用到kali,但是得挂代理,就从别人那里知道了一个kali挂代理的工具proxychains4. 首先是打开kali输入:root@Kali:~# vi /etc/proxychains ...
- POJ1737 连通图
一句话题意:求一个 \(n\) 点带编号的连通图数量. 吐槽一下:好好一道计数 dp 为什么不加取余????逼着选手写高精度的出题人应该拎出去烧--哦楼天城是出题人是吧哦当我没说我什么都没说我现在就把 ...
- Linux下文件实时自动同步备份
转载简书: https://www.jianshu.com/p/fc2f3ec661c0
- Connect-The-Dots
Connect-The-Dots 目录 Connect-The-Dots 1 信息收集 1.1 端口扫描 1.2 后台目录扫描 1.2.1 目录分析 2 目标服务安全检测 2.1 ftp检测 2.2 ...
- LeetCode-540 有序数组中单一元素
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/single-element-in-a-sorted-array 题目描述 给你一个仅由整数组成的 ...
- Kotlin学习-类(嵌套类,内部类,数据类,静态类)及类扩展
一般类形式: class Person(var name: String){//构造函数放在类头部 var age = 1 var fulName: String var address = &quo ...
- N63050 第二周运维作业
1.显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录 1 [root@centos8 etc]#touch 5a.txt 9a.txt 2 [root@cento ...