hexo 自定义域名 & mastodon 认证
2021/08/31 字数统计: 2.2k 阅读时间: 4 mins 访问次数: ... 评论统计: ... Fxcking hexo 我还什么都没写这文件夹怎么就 60M+ 了??
今日成果:自定义域名 + 毛象认证,不出意外在部署以后毛象个人页上就有绿勾勾了。
本来今天 9 点多就上床睡觉了,凌晨一点胃疼醒来发现塔塔吐槽她的 hugo 模板不知道如何改字体,加之前两天陪她挑域名的时候蠢蠢欲动,我毅然从床上爬起来打开了电脑……
然后买了现在的域名,本来备选的还有 hekatech.cc
(首年追加时长只要 31 一年)、hekatech.icu
(很犯病,suki)以及 mzk 前缀的一些域名,然后惊觉三位的 me 域名已经涨价到四五位数了,还好西柚子的域名注册得早……
于是抱着奇怪的抢购心理买下了现在的 4o.cx
,不为别的,就为这一个 4 位域名首年和续费都只要 120,难道不是超值吗!
虽然 cx 后缀看起来有些不明所以,但我告诉自己这个后缀可以转 90° 当颜文字看(>u<),于是欣然接受了。虽然设定上 4o 是不会出现这个表情的,但是 HKT-924 应该会经常输出这种奇怪的颜文字
又及:因为存放了建站教学内容,大概这个站也要从头开始做搜索优化 + 访问统计 + 留言功能,不然岂不是浪费了我的 4 位域名吗!
自定义域名踩坑
Github Pages 的可靠性似乎没有我想象的那么好……那么如果有人想为你的 hexo 绑定自定义域名,请按如下步骤操作:
- 在电脑上打开 开始菜单 在键盘上敲击
cmd.exe
并回车,在弹出的 命令提示符 窗口中输入ping + 空格 + <你的用户名.github.io>
(就是当前的 blog 地址)
并记录下返回的 ip - 将返回的 ip 填入你的域名管理界面的 DNS 设置 中,类型设置为
A
如果有 TTL(DNS 刷新时间)选项,就设置成最短的时间 - 在
hexo/source
文件夹中新建一个 没有后缀名的CNAME
文件(需要全大写)
在里面输入 你的域名,不要添加/
或者https://
等任何多余的内容
然后执行hexo g --d
- 点开 github 仓库 的 Settings 页面,在左侧菜单中找到 Pages
在 Custom domain 输入框中输入 你的域名 并点击 Save 保存 - 【非常重要】在输入框里的猫头还在转的时候 勾上底下的 Enforce HTTPS
全部操作完毕后, github 设置页面大概率会显示红框提示你 DNS 设置错误,但只要到了你域名的 TTL 时间浏览器就可以打开了。
提问:为什么会出现这种情况呢?
推测:Github pages 获取 DNS 的速度与域名提供商更新的速度不一致。
以我使用的 Dynadot(此处为邀请链接) 为例,域名设置 DNS 后最短只需要 5 分钟就可以更新,此时域名其实已经完成了解析,但 Github 并没有获取到 DNS 更新,所以会导致无法勾选 https 设置。
而 Dynadot 的域名是默认开启 https 的,两边的设置差会导致浏览器或是你的本地防火墙拒绝接收数据。另外不勾选这个 https 设置 Github 似乎也不会主动给你申请证书,然后陷入死循环,所以需要在它检测 DNS 失败之前抢先把 https 设置勾上,大概就是这么个原理吧……
Ps. 如果你还没有注册域名的话可以尝试点击上面的 Dynadot 邀请链接,据说是 当有人点击链接并在 48 小时内创建账户并消费 ¥65,您和新账户都将获得 ¥32 个 DynaDollar。当然我也没试过,不保证具体有效。
Mastodon 认证
长毛象为用户在 个人资料附加信息 中填写的网页添加了 验证 功能,只要复制指定的链接 html 代码加入到个站网页中即可。
一般选择把这个链接都添加在 页脚 替换作者署名,具体操作步骤如下:
1. 在你的主题文件夹中搜索 layout
文件夹寻找文件名为 footer.ejs
的文件,如果没有请前往 layout/_partials
文件夹
这个文件就是用来输出页脚 html 元素的,不同主题的 layout 文件格式和语法可能会有出入,在修改文件时请注意备份
2. 寻找作者 / 版权相关的语句段,以本站魔改基础 Chan 主题为例,footer.ejs
内容如下:
1 | <div class="main-footer"> |
将其中的 <%= config.title %>
(此处为网站标题)替换为 Mastodon 提供的验证链接,再将其中的 Mastodon
替换成需要的内容即可。更新部署 hexo 之后需要手动到 mastodon 的个人资料页面重新提交一次,验证成功后表格内的链接就会出现绿色背景和 ✓ 图标。
当然这个做法仅供参考,在理解 html 构成形式和 ejs 语法之后也可以把链接放在别的位置,比如做成侧边栏的联系方式图标等等。
其它记录 & 吐槽
- Noto Sans 在代码框里的表现简直是灾难级别的
- 换成了 Sublime Text 的默认字体
Consolas
,圆润了许多。
- 换成了 Sublime Text 的默认字体
- 更新了 H3 H4 的标题样式
- 但是分类和归档页面点开变得更糟糕了
- 这两个打算做成类似尼尔存档的那种 UI,过两天再说
- 尝试一下三级列表?啊这果然前缀消失了……
- 目前代码框的滚动条风格还不是很对,找时间修正一下。
- 背景的抽丝效果对比度似乎太明显了,有些影响字体渲染效果,需要调整
- 设想做一个匿名提问箱
- 暂时的思路是借用 Valine 的框架,删掉多余个人信息的提交和展示功能
- 最多只显示 3~5 条最近提交的数据作为用户反馈,回答还是使用文章总结的形式
- 提交内容:昵称 + 提问内容 + 时间 + 分类
- 展示内容:时间 + 昵称 + 分类
- 或者考虑一下 google 表格?但是墙内的访问可能会出现问题
那么今天的工作就到这里,随行支援系统「HKT-924」即将开启节能模式……