Contents

Complete theme configuration

前言

这两天不知道怎么了,突然就有兴趣完成这个拖了很久的事情了,一干起来浑身是劲,思路都清晰起来了,而且这次完成这个事情还是很流畅的,应该从开始完成只有3天。如果从一开始算起来,那就是崎岖坎坷,多次奔溃,持续了得有快两年时间。持续时间太长,具体的时间事件查起来太费事,我就模糊处理或者是瞎写了,谨慎辨别/doge。

Introduction

为了解决打游戏 NAT 和网络环境的问题,研究生初试结束以后,我就开始尝试建设自用的构架,但苦于找不到资料,已有资料都或多或少的用到了打包好的项目。折腾老半天还是用现成的,不如不折腾,安于现状。电脑开热点解决比较麻烦,有些设备甚至都不支持配置,比如游戏机连了热点还是玩不了。没办法,想着干脆用加速盒算了。有要加速盒,还要路由器,不如搞一个二合一的,支持加速器插件的路由器。但选择太少,不如来一个软路由,全面解决网络环境。结果买来软路由发现自己根本不会编译系统,用现成的又怕有后门。

/theme-config/router.jpg
买了软路由头一次用,看看里面什么结构

都花钱买来了,总不能当废铁吧。我就上B站找保姆级教程,但即便一步一步跟着做,还是有问题。仔细一看,都是两年前的视频了,有问题也正常。时间太久了,都找不到作者,想问问都没办法。这一搞给我搞自闭了,我还记得那一个月每天闷闷不乐,加上要忙着毕业设计开题、复试,情绪低落,压力陡增。当时教程里面有内网穿透相关的内容,我也照猫画虎注册了阿里云。买域名时候看见折扣,一口气买了10年的。买服务器看见折扣,直接买一年。最后这域名没用过,服务器更是不知道怎么用,当时为了降低门槛额外花钱买了 Win 镜像,但还是贼难用。当时主要是为了搭建一个 Wordpress 的博客,最先遇到的问题就是安装 Wordpress。下载的慢,下载下来不会安装,按照教程解压了没反应,好不容易进入了安装界面,但是无法链接 MySQL,搞了宝塔面板链接数据库和域名也没用。要开始研究生复试了,不能沉浸在失败中,全当打水漂了,考试要紧,毕业要紧。

/theme-config/routerDebug.jpg
啥都不懂,调试的痛苦记录

调整好开始准备复试。那时候为了准备考试,查了大量的专业知识和常识。有一些学过的知识,以及一些经历相关的内容都记不太清楚了,只能模模糊糊说个大概,这要是面试指定不行。所以看了很多以前的笔记,更重要的是以前自己写的一些总结文档。当时写总结文档有两方面原因,一方面是我觉得这些知识很多都是在企业里学到、看到的,作为教学资源一定是很宝贵的内容,要是光凭记忆,以后模糊了甚至忘了就太可惜了;还有一方面就是为了写而写,喜欢留痕,然后回顾时候感觉很满足。因为文档是一些工艺内容和工业常识,看了就会,看了就唤醒了记忆,所以满足感爆棚,而且很有学有所获的成就感,更感觉自己当时写这些东西是明知的选择。

2022年3月底时候,调剂系统还没开,就已经结束复试通知结果了。复试结束了,就有了一样的想法,觉得自己应该把这段时间学的这些东西记下来,就开始着手写文档。一开始还是用 word 写,但是又要注意格式,又要注意内容,插入个 list 都要搞半天格式,英文中文也得变来变去,我又有点强迫症,非要完美。结果一周过去了,啥也没写出来,光搞格式了,核心东西没写出来,花里胡哨的整了一堆。为了解决这个问题,我就想有没有什么方法可以让人只专注内容。当然不是去找什么提高注意力的方法,而是找一种新的编辑方法,新的工作流,让我更专注内容。最后我发现了 markdown,编辑简单,格式统一。

其实一开始我是在 GitHub 上了解到 markdown 的。项目里面都有 readme.md,我就很好奇什么是 .md 文件?为什么要用这种文件而不是 .txt?我就搜索发现这种 .md 文件是由 markdown 支持的一文件,readme.md 是一类类似说明书的文件。那时候也不觉得 markdown 好用,单纯认为为了写一个介绍还需要学语法,而不能直接输入;所见不是所得,交互性差,甚至觉得很垃圾。一想到 GitHub 这么厉害却用 markdown,百思不得其解,只能悻悻认为,“可能对程序员来说这种方式非常好用吧。”这次寻找解决方法时,发现 markdown 可以很好的满足我专注内容的要求,就硬着头皮学了写作语法,开始尝试写作。

不用不知道,一用吓一跳,markdown 写东西真的巨流畅。简洁明了,只需要关心内容,不用关心格式;写作语法也简单,一学就会,入门就像喝水一样。当我用 markdown 写完第一个文档时候,我深深的感受到为什么它会这么流行,用起来真的太丝滑了。现在我根本离不开 markdown,如果有机会还打算学一下 Latex,毕竟有现在学校资源,都不用配置本地环境,直接云端编辑,爽翻。

/theme-config/g920.jpg
买了个方向盘,玩游戏真香

后面慢慢地毕业设计的事情越来越多,开始猛猛干活,高强度做反应,感觉自己要顶不住了,就搁置了这个事。毕业以后一直在整理文件、账户,假期效率低,拖拖拉拉等到开学以后才整理的差不多,更是没搞这些文档。

胡思乱想 (Development)

/doge 整理账户时候整理了 GitHub 账户,改了新名字。整理文件时候又不知道这些文件应该怎么归类,以前那些都是学习时候的总结,可以和其他学习资料放一起;这些也不算官方的学习资料,混在一起不太好;如果单独拿出来又没多少,没必要再开一个新的区域,很愁。开学以后就有了新的想法,我把这些文档放在 GitHub 上,专门开一个库,不影响本地资料整理,又方便这些文档的阅读。我真是个天才!我就开始学 GitHub 怎么用,然后建了一个新的 Repository,把所有文档传上去;下了 VS code,又方便管理,又方便编辑修改。后来迭代多次,最一开始的库已经删除了,但是我还记得,一开始我当时为了更好写出一个文档,改了又改,斟酌用几级标题,引用怎么写,怎么换行好,子 List 怎么对齐,一个库打开密密麻麻的全是 markdown 文件。因为文件太多,我还特地分了类,有游戏、科普、知识几大类,也方便了不少。

接下来科研肯定会很忙,到时候就可能没时间干这些想干的事了,又想到自己还有服务器压根就没用。梅开二度,探索服务器。首先要解决的就是链接数据库问题,当时不懂命令行,教程都看不懂。大概11月时候,猛猛搞了好几天,每天搞到晚上后半夜。心态也是扭曲的,一开始很难受,后来越搞越进入状态,等到睡觉时候就停不下,但一直失败,实在顶不住滚去睡觉,第二天醒来,发现自己啥也没干出来,就更自闭了,然后又是一个轮回。最后花了一个礼拜,我才发现在 Linux 中的命令和在 Windows 的 PS 中的命令是不一样的,用了半天错的。又花了一个礼拜才搞清楚自己是因为 MySQL 的管理员密码错误进不去,找了半天密码才进去。进去了也不知道 MySQL 中的逻辑、查看方法和命令,啥也没干成。现在来看很可笑,但是当时对我来说真的难如登天。当时最后结果是什么我不太记得了,如果不出意外的话,我当时都没有看到 Wordpress 的欢迎界面,应该只是进入了 MySQL,但是啥也不会,根本无法配置,解决不了无法链接数据库的问题。虽然没成功,但是我就想,我遇到了这些问题,废了老鼻子劲才找到可靠的解决方法并且解决,我下次要是再遇到了,不还得找半天吗?这不是纯纯浪费自己时间吗?所以我得把这些东西记录下来,方便自己下次使用,顺便还可以作为记录生活的一部分,万一还能帮到其他人就更好了。

/theme-config/WinPS.png
PS 杀我

写出来了,怎么整理汇总,怎么让其他人可以访问,这些都是摆在我面前的问题。我发现可以做一个博客放进去,让所有人都可以访问,而且可以在搭建博客的过程中规范工作流,更好的管理内容,我就开始搜索怎么搭建自己的博客。在知乎上搜索搭建教程和优秀的模板,看到了有校友的回答,感觉很牛,发现学校好像是免费提供个人主页搭建的(后来证实我入学的时候已经不支持这个业务了)。平时也看很多大佬自己做的服务,发现大佬们都有自己的博客和个人介绍,这不正好可以用来学习?虽然没有复刻/实现,但是东西没少看,也算是打了些基础。后面校园里疫情肆虐,马上又要离开校园,完全没有心情继续干了。虽然没有什么成果,但是见识到了,不再是虚无缥缈的了。

落地 (Run)

新冠,康复,过年,开学。到了单位里,换水土,环境又冷,很不适应。半夜里的呼噜声,真的,响彻天际,也休息不好。刚到了单位,还要完成之前的考试,还得好好复习。身处这种院所里面生活单一,心理压力又大,每天焦虑的不行。过了多半个月,自己才适应了这种节奏,认识到一切都要让自己舒服让自己开心,自己才是最重要的。其实说白了,到最后还是一年的服务器快到期逼了我一下。

到期之前总要挣扎一下。这次我直接改变思路,服务器快到期了,我空余时间也不多,直接上成熟的解决方法,以使用为导向,而不是学习全过程。我直接在阿里云市场上买了 Wordpress 平台,包括了 AliyunLinux3, LNMP, PHP7.4。只要不按年购买,这个镜像就是免费的(即便不是免费,也早应该这么干);部署服务器以后,所有的东西都已经安装完成;还有技术支持,可以直接电话联系客服,实时沟通解决问题。这样一来,我只需要直接用就行,也不怕遇到困难还得找半天解决方法。

说实话,那段日子太痛苦了,很多事情我都已经忘记了,我只是依稀记得还是遇到了很多问题。我没见过安装完成是什么样子,或者说新的安装完成的界面和旧的、教程里的不一样,我一开始也不清楚人家镜像啥都给弄好了。一打开页面是个鸟,里面有一个“《我的第一篇文章》”,我看这不是后台啊,我啥也操作不了,是不是还得安装什么?我就开始搜索,尝试,废了老鼻子劲,最后给人家打电话,人家说直接用就行,不需要改东西。我直接懵了,才反应过来那个鸟是报喜鸟,是安装成功了。人家还给了使用教程,但是我都不知道从哪看,看不懂啥意思。最后找了好久找到了一个视频教程,但是视频里用的是旧版本的,很多东西又给我弄懵了。最受益的是,镜像中使用了 phpMyAdmin,这个可视化数据库软件简直是我的救命恩人,我从这里面才大概理解博客搭建的一些结构关系(或者说是逻辑关系)。看了几天报喜鸟,别的啥也没学,服务器就到期了,就暂告一段落了。至少我发现完全了解并学会安装 Wordpress 我才会开心。

/theme-config/wptheme2022.jpg
拜托,默认初始页面给个管理员页面的跳转呗

跑偏 (Branch)

ChatGPT 的风吹到了国内,我也从单单刷视频看看,到跃跃欲试。注册新手机号,注册新邮箱,注册新域名,注册 OpenAI 账户,买 Plus 会员。不得不说,一开始用 GPT 是为了干活,后来发现它对化学一窍不通。转头打算搞点计算机爱好,GPT 猛地一,Copilot 才是真正的 pilot,直接带我起飞,我只是会感叹和哔哔的废物。/doge

当时在所里工作压力太大,自己的状态不太好,适应不了,更是难受。还好那个时候的补助不少(讲真,钱还是相当管用的),消费就是释放压力最好的方法,请大伙吃饭,给女朋友买东西,存起来,但是更多时候还是感觉自己不开心,还是得买自己想要的,满足自己的心愿。所以我直接咬咬牙,一口气买了5个域名,后来年中时候给其中的3个域名都续费了8年(主要是有一个不打算要了,还有一个不是在一个 client 上注册的)。讲道理,满足的心愿,才能让自己真正开心(虽然花钱不舍得,但是开心是真的,很爽。解压方法 get)。

/theme-config/GoogleDomains-gone.png
Google Domains 无了,/大哭

OpenAI 对国内太多限制了,很多 IP 都被封掉,无法访问 ChatGPT。也有可以用的,但始终要来回切换网络,太麻烦了。很快就开始吃灰了,虽然想到可以用,但是太麻烦,算了吧。但是热情似火,每天还是会搜索、刷B站、看知乎,了解大量 GPT 相关的内容。突然看到知乎的一个回答,是一个 GPT 的部署教学,我用自己的服务器是试了试,直接成功,非常流畅。后来又通过 docker 的镜像找到了 GitHub 的地址,发现了大佬的 GitHub。这简直就是一片新天地,Pandora 的介绍文件里有一句话,“潘多拉 (Pandora),一个让你呼吸顺畅的 ChatGPT。”当切身体会到这句话的涵义后,我只想说“太对了,哥;哥太对”。部署简单高效,部署在自己服务器上还安心,不需要在意网络问题,不用频繁的切换代理,不需要被烦人的验证折磨;流程,顺滑,真的呼吸顺畅。用起来顺手,才会又更多的想法。那时候 iOS 的 GPT 开放了,可以通过 AppleID 订阅会员,我就开始买 Plus 会员。可惜用了一个月,OpenAI 就把我账号封了。后续只用 3.5-Turbo,同时直接用了大佬的服务器。其实当时自己什么都不懂,部署时候还是碰到了不少麻烦。没办法,感兴趣,兴趣真的是最好的老师。

/theme-config/pandoranext.jpeg
Pandora,一个让你呼吸顺畅的 ChatGPT

回归 (Return)

其实在4月初,为了白嫖 Copilot,发现 GitHub 有 GitHub education,就申请了,直接免费使用。后来发现还可以白嫖 Azure 的 B1s 服务器,感谢微软。一开始是用服务器部署 Pandora,封号以后就空闲了下来。有了服务器,有了域名,算是凑齐硬件支持了;受之前的想法和习惯影响,我觉得应该要把这些做的事情记录下来。

/theme-config/GitHubEducation.jpg
非常感谢各位提供的资源

万事俱备,直接开干。有了之前的经验,我直接用 markdown 写,再用 GitHub 托管,而且还可以多设备操作,回了住的地方也可以继续写,算是打通了工作流。

首先得选择一个平台,接触了那么多,WordPress 自然成为首选。在部署 Pandora 的时候接触了 Docker,相当好用。我就想能不能使用 Docker 部署 WordPress,这样一来还不会影响 Pandora。于是开始全网搜刮部署教程,当时找到了三四个教程,但是每一个教程都不太一样。为了了解不同,找到一个最合适的,我只能一点点的学习的 Docker。花了一两个月我才初步了解了 Docker,懂了各个教程的不同。通过 Docker 部署 WordPress 是简单了不少,逻辑也清晰,很顺利的完成了部署,也顺势懂了 WordPress 安装过程中的各个步骤的作用。安装完成后其实也没怎么用,界面东西太多,对我来说上手有点难。而且更重要的是怎么备份数据,如果要更换服务器怎么迁移数据,怎么安装证书并且完成 Nginx 的配置?这每一个问题对我来说都需要大量的时间和精力,难如登天。我就寻思得换个办法。

看到有很多大佬博客都是用 HEXO 搭建的,我就也打算用 HEXO,看了 HEXO 安装和配置方法,也不简单。搜索 HEXO 相关内容的同时,我发现了 Hugo。Hugo 介绍是最快的静态网页,我就感觉 Hugo 是不是更好一些,大致看了 Hugo 官方主题集,有很多我很喜欢的主题,于是决定用 Hugo。

/theme-config/Apple-Devices-Preview.png
千挑万选的主题,感觉很合适

Hugo 和 HEXO 一样都支持 markdown 语法和文件,我就想是不是可以把内容托管,这样一来数据的备份和迁移问题就解决了,我也可以更方便的进行写作。我冥冥之中感觉这个是可以做到的,但什么都不懂,都不会搜索,走了很多弯路才发现解决方法。其实说实话,我感觉现在的部署方式也有一些问题,但是也不知道怎么解决,问题也不是很大,就先这样吧。搜索、尝试了很多方法,一个偶然巧合,我发现 CF 可以部署,从而替代服务器。

主题 (Theme)

花了超长时间挑选了自己满意的主题,这个主题简洁,扩展性强,兼容性强。这个主题感觉总共配置了三四次。

Post 一开始直接导入 md 文件。后来不断摸索变成了文件夹,这样也更方便的添加图片。添加了时间文件夹分类也不影响 md 读取,很好、很方便。

配置 Post 头。一开始是按照作者的模板配置的,后面认真研读了介绍文档,才有了现在的示例抬头。

Theme 配置。一开始是真不会,看根本看不懂。想要修改什么就先改了,再部署看效果;或者有变量名称、注释等,搜索相关内容、修改、部署,看看有没有用,说白了就是试,commit 里面最多的就是 test(本地懒得安装 Hugo,直接提交测试)。就这样先改了个大差不差,至少先把标题作者什么的改了。

后来又改过几次,都是小打小闹;这次突然心血来潮,打算再试试。但是一开始也是一样,弄不懂。就转头打算先做一个图标,同时再看看介绍文件。花了一两天左右,生成了非常满意的图标。没有了其他事情就开始一个劲看介绍文件,之后就是疯狂测试,非常成功,信心倍增。一鼓作气,直接从头到尾阅读配置文件,全线拿下。

后记 (Epilogue)

坚持不懈

打算做的,想做的,直接开始,不要有所顾虑

正在做的,咬紧牙关,坚持做完;可以慢,不能放弃

未来坚持记录,坚持好习惯

修改记录 (ChangeLog)

我本来想着一晚上就把这个写完了,还特地写了前言,希望就写一个大概就结束,但是最后发现我根本写不了大概。做实验没有按时吃晚饭,8点多快9点出去吃了个包子,路上还在仔细回忆当时各个事情的详细时间点。现在有个毛病就是没有依据不敢写,不敢说,随便写一句话都想着要从哪里找引用佐证。加上这几天一直休息不好,现在眼睛都看花了,明天再说!于2023110222:09

太累了,今天突袭开会,惊险刺激。这几天感觉睡得着了,但还是累。昨天也没怎么写,今天写起来感觉事情更多了,越写越爽。不早了,明天继续!于2023110422:03

一别再见就是月底了,其实中间也写过两次,都很匆忙就没记录。隔了这么近也足以可见,下次可能就是很久之后了,这个月也算是忙着适应新生活了,很值,抽个空写完吧。于2023112700:37

大差不差了,自己坚持这么久,也要迎来大结局了,真不错!于2023112900:34

其实也挺久了,很多东西忘记了,就简单快速地收个尾。不是潦草,但是精简!于2023113019:17