个人博客搭建记录
使用github page+hexo搭建,主题为fluid,搭建步骤参照:Github + hexo 实现自己的个人博客、配置主题(超详细)
主题:https://hexo.fluid-dev.com/
ps:刚开始的时候我默认Windows无法弄hexo,故在ubuntu虚拟机中弄的,但每次修改博客内容都要打开vmware,比较麻烦。而后听说Windows也可以部署,故将source目录下的内容搬移过来并对照以下条目进行了相应的修改,不过为了省事最好直接在Windows弄这些东西。
搭建时的问题:
1 Ubuntu apt默认下载的nodejs版本过低,snap安装18.18的node js
2 在source目录下添加CNAME文件指定个人域名
3 在iconfont中搜索所需图标,并通过自定义css导入项目 自定义图标
4 在source目录下添加本地图片以便博客引用
5 通过CsdnSyncHexo将csdn博客导出为markdown格式并移至source/_posts目录下
6 csdn博客迁移后图片显示403, 只需要在每个文章的头部加上这么一句代码就可以 <meta name="referrer" content="no-referrer" />
该语句能生效的原因:
http请求头中有一个referrer字段,用来表示发起http请求的源地址信息
服务器端在拿到这个referrer值后判断请求是否来自本站
若不是则返回403,从而实现图片的防盗链。上面出现403就是因为,请求的是别人服务器上的资源,但把自己的referrer信息带过去了,被对方服务器拦截返回了403
在前端可以通过meta来设置referrer policy(来源策略),referrer设置成no-referrer,发送请求不会带上referrer信息,对方服务器也就无法拦截了
get请求图片出现403 防盗链解决方式 no-referrer
通过vscode替换功能一次性更新所有博客md文件
1 |
|
7 csdn导出的markdown文件toc目录未能正常显示,文章开头没有以下类似的东西,只显示一个TOC字符
但发现侧边栏也有目录,故删去TOC语句
通过vscode正则匹配一次性删去所有TOC行
1 |
|
8 导出的markdown文件分类以空格分割,需手动改成-[]分割
1 |
|
9 代码风格改成atom-one-dark
1 |
|
https://highlightjs.org/demo
好像要npm install highlightjs –save
10 添加音乐播放器
在网易云得到外链
1 |
|
在node_modules/hexo-theme-fluid/layout/about.ejs中加入
1 |
|
可以通过修改node_modules/hexo-theme-fluid/修改页面信息
最终效果:
hexo 第四讲 – 界面中加入音乐
5-9更新:
使用hexo-tag-aplayer插件添加音乐播放器,更加地简洁
相关博客:
11 增加评论功能
主要依据以下这篇博客,注册leancloud账号,将AppID AppKey serverURLs填入valine配置中,不过这博客有点误导人,以为serverURLs是填安全域名呢,实际上应该填REST API 服务器地址
hexo-fluid添加valine评论记录
效果:
12 增加访问数统计
主要依据Hexo-fluid主题设置统计博客阅读量同样在leancloud创建应用,得到AppID AppKey serverURLs,而后修改主题配置,注意填入serverURLs。但这篇博客只使能了博客阅读次数统计,实际上还有总访问次数统计
最终效果:
13 将网站加入各个搜索引擎
参考博客:
hexo博客的高级SEO优化【灰鸿】
如何在Google Search Console里设置网站域名的DNS验证
将网站加入百度,必应,谷歌3个网站,添加sitemap站点地图,优化URL,代码压缩
百度加入网站步骤一大堆,烦死了,真恶心
14 自动摘要
csdn导出的markdown文件都有一行<!--more-->
,妨碍了生成自动摘要,全部删除
15 博客封面未能成功显示,返回403
在node_modules/hexo-theme-fluid/layout/index.ejs文件中加入no-referrer语句 (与加入音乐播放器类似的思路)
目录结构
16 使用hexo-seo-autopush每天自动提交url到百度和谷歌必应
相关步骤:
https://github.com/Lete114/Hexo-SEO-AutoPush
说明:
每天中午 12 点推送一次网站信息到 Baidu 和 Bing,提高爬虫抓取几率
可手动点击star
触发 Actions
17 使用阿里云图床+PicGO+typora搭建博客图床 使用“图压”软件压缩图片
之前直接把图片上传到csdn上,然后使用csdn图床的链接,总归有点麻烦,且怕csdn把这种方法屏蔽了,故花钱在用阿里云搭一个图床,而且搭的时候可以与typora一起使用,非常方便,复制粘贴到typora后就直接上传了
Typora+PicGo+阿里云OSS搭建博客图床(超详细)
注意存储区域只需要写oss-cn-xxx,不需要前面的bucket标识
18 使用hexo-all-minifier压缩博客资源
参考博客:Hexo折腾系列——博客访问速度优化
之前使用hexo-neat压缩文件,而后看到以上博客,故改用hexo-all-minifier
使用cnpm安装hexo-all-minifier成功