近期项目进展:博客重构、PXE 探索与微信后端优化
最初开设这个公众号,是希望能分享一些教程,借此推广一下自己的业务。在“封装系列教程”发布之后,我就不知该写些什么了。有趣的是,这期间阅读量和分享量最高的,反而是那篇关于爱普生清零软件的文章,这确实有些出乎意料。
博客
在那之后,我着手将博客从PHP迁移到了 ols-wordpress
(一个集成了OpenLiteSpeed的WordPress Docker容器),主要是看中了Docker迁移的便捷性。然而,迁移过程并非一帆风顺。我的反向代理用的是雷池(SafeLine),其Docker实例位于另一个独立的网段(例如192.168.x.x)。LiteSpeed的缓存插件需要获取访客的真实IP地址,这就要求在LiteSpeed管理面板中添加信任IP。当时我未能及时发现这个双重反代问题(litespeed不信任雷池的header),只是注意到LiteSpeed后台提示连接异常,没有太过在意。
雪上加霜的是,新站点刚建立,我就安装了不少插件,包括免费版的Yoast SEO和Rank Math,以及一个流量统计插件。后来又尝试了一些特别版的SEO插件。这些操作,加上迁移本身,导致网站<head>
部分充斥着大量的JS脚本。然后必应突然就不收录了。也不知道这是特别版插件的问题,还是迁移后缓存配置不当所致。
那就从头开始吧。目前,新博客的界面设计已基本定型,后续主要剩下一些收尾工作,例如:实现URL自动推送到搜索引擎、添加多语言支持、完善登录功能以及文章附件下载的后端服务等。
PXE装机项目
早些时候,我使用Iced-UI框架完成了一个简单的系统安装程序。这个程序能够实现基础的系统安装、磁盘格式化以及引导修复功能,并且能够自动检测UEFI和BIOS环境,据此进行合理的分区。Iced-UI的state
、msg
、update
机制,让整个开发过程一气呵成,逻辑处理非常流畅。然而,后期在优化UI时却遇到了瓶颈。更主要的是,作为我的首个项目(PE装机),经验不足导致我将所有的state
、msg
、update
逻辑都堆砌在了一个state.rs
文件中,代码量高达几百行。虽然曾想过进行拆分重构,但考虑到UI的优化难度,这个项目便暂时搁置了。
之前也做了一个能够根据UEFI和BIOS架构,分发对应的iPXE引导加载的Dioxus程序。接下来,我计划使用Dioxus来重构PXE启动及后续的安装流程。之前用Iced-UI编写的安全启动检测、硬件架构识别、系统安装和磁盘格式化等核心代码逻辑,大部分都可以复用,主要的工作在于UI设计和实现状态管理部分。
微信公众号后端
微信后端方面加入了扫码登录功能。但是,前端界面设计依旧没什么头绪,对于如何分栏、元素如何布局等,都缺乏思路(哦对了,我开始是想做多客服系统,我想给我的网站加个网页客服)。
之前设计的扫码分发JWT(JSON Web Token)机制,但是也没想太多,就单独做了微信后端这一个应用场景,但是现在估计还要加一个区分不同应用和回调地址吧。
这里还有个小插曲:最初我使用的是微信公众号的测试API进行开发,这个测试API权限很全面。但后来切换到我自己的订阅号进行实际测试时才发现,订阅号并没有“事件二维码”的API权限,只有服务号才有,只好又改成公众号内扫码登录了。
其实只要一想,每个程序都还有很大的改进空间,先把博客完善了吧。学啥就发啥吧,最近在做网站的SEO。
一步一步来吧~