DeepFog Blog

深霧遠東通訊所

关于这个博客的创建历程

发布于 # 文稿

我很早就动了想要搞一个属于自己的博客的念头,因为无论是微博还是QQ空间,其功能都太局限了,而且很多广告,自托管的想法于是萌生,自托管既可以自定义页面又可以用自己的域名访问并发表文章,主流的SNS往往都会对主题什么的收费,并且对内容进行审查,这是很恶心的。自托管解决了主流SNS的大部分问题,除了降低了原有的友际圈层的粘性,大多数人并不会特意地进到浏览器,然后输入你的域名,再去看你的post,实际上应用技术让网上冲浪的成本降得异常的低,以致乎出现了许多赛博文盲(当然显而易见地让掌握信息差的人暴利)。 OpenSource让近乎所有商业化的服务变得可以自托管,然而其缺点也是显而易见的,与主流商业软件的不兼容、页面的简陋…等等等,让你的隐私变的更加安全的同时也让你的生活变得更加便利(当然,拥抱开源是可选的,而使用那些无时无刻不在窃取公民个人信息用于牟利的软件却是被迫的),毕竟李彦宏曾说过

很多时候中国人愿意用隐私交换便利性

虽然这句话的的确确是事实,但百度在接收了用户隐私数据后有妥善处理吗?

我最早搭个人博客是在2022年,那时估计是暑假闲来无事,在雨云整了一个虚拟主机玩,选框架的时候很纠结,实际上我搭建的第一个网站是基于typecho的(帮别人搭的视频站),着手搞个人博客的时候我认识的框架也就它和WordPress,WP在它面前略显臃肿,但WP胜在功能齐全完备,其实除了它俩我还了解了一下静态博客(区分于动态),但是静态过于复杂的操作一下子把我劝退了,折腾点不要紧,但是静态博客不带web的后台让我无从下手。

第一次了解到静态博客是当时看到DIYgod当时用的Hexo的静态框架(现在换成了xlog就是),觉得非常炫酷,一打开官方文档通篇的代码,我的静态博客方案遂止。

后来网上冲浪,冲到了无垠,觉得无垠的mdx主题非常好看,简直一见钟情,质感设计非常的优雅,而且主题完整度与多端兼容性非常好,并且基于WP,于是火速在服务器上装好了WP,马上用上了mdx,实际用下来也是非常好用,自定义很强。

22年搭的那个博客非常简陋,直接就是一台低配服务器加一个不知道哪里整过来的二级域名,然后就草草上线了,为了充实blog的内容马上开写post,第一篇就是‘’如何搭建一个属于自己的博客‘’,当时干劲十足,想要写一篇保姆级教程,当然现在看起来是非常稚嫩的,里面的很多用语都很死板,很多变量也是直接复制自己机器的路径,还准备写分别使用Typecho和WordPress搭建的流程来着,不过当时刚写完WP的教程离服务器到期也没剩几天了,我的经费也不足以支撑一个月二三十的运营费了,于是又告一段落,虽然后来有断断续续地买服务器,但也没兴趣搞blog了,多半是在弄alist这些(因为不限速的阿里云盘很火爆,我也借着阿里刚发展的红利看了好几部电影,非常爽)。

直到24年初,我在闲鱼上99淘了一块装好的NAS板子,买了机箱和电源,装的群晖,刚开始本来还没点亮,后面整烦了叫了卖家来远程操作了一下,卖家还吐槽了我的电脑配置太低了。。。终于装上了黑群晖,不过是6的版本,非常的古老,而且界面根本看不下去,太复古了,而且里面的软件商店也停止支持了,用了没几天就失了新鲜感,于是我准备自己升级黑群晖7系统,结果由于自带的内存条只有2G,用arpl装必卡死(不过我后面又加了一根内存条,还是装不上)。

就这么折腾了一个月,我放弃了黑群晖,选择拥抱Debian(刚开始准备用Ubuntu的),Linux简直是垃圾佬的福音,再低的配置也能流畅运行。Debian跑了好几天发现系统总是崩溃,于是我开始排查,系统没问题,于是聚焦到了硬件。后面消停了几个月没折腾,最后才发现是我淘的垃圾硬盘卡壳了,不过还好另一个有用,我就卸下来那个坏的重装了一遍系统,这下终于正常了。

于是急不可耐地基础设置了一下就开始装上熟悉的WordPress了,依旧是使用的MDX主题,还是依旧的简洁耐看。但是我发现了一个大问题那就是虽然我家有公网IP但是要与外网通联又需要换掉光猫或者改桥接,总之就是要动家庭网络,非常麻烦,而且家里网络整体的布局也很复杂,本身我的房间没有路由器,而且装的网口也不知道对接到了哪里去,我找遍了都没会找到我的网口对接的地方,遂放弃,把NAS装在了客厅的网口旁,问题又来了,客厅网口接的是光猫下一级的路由器,而我的房间信号最好的是光猫的WiFi,是连不上客厅路由器的WiFi的,而且即使在内网环境下不同设备的网段是不同的,因此虽然我连接的是上游的光猫,但是仍然无法访问下级路由链接的设备,于是内网又被分割成了几个内网中的内网,互不连通,出乎无奈之余,我只有在下级路由的后台中配置“端口映射”将NAS通过下级路由在光猫网络中的IP穿透路由器这层小内网,让连接光猫这个相对外网的设备也能间接地访问到NAS。

显然,内网到内网在折腾的路上已经大概处理好了,这下我终于可以在躺房间里访问我的NAS了(虽然每次配置的时候都需要打开路由器后台配置端口号)。而外网访问家庭网络仍旧是件困难的事,由于手头不宽裕没钱买服务器,所以自己搭外网转发是没戏了,于是我开始寻找免费的解决方案。

这时互联网大善人[[Cloudflare]]带着它的[[Cloudflare Tunnel]]挺身而出👏---

Cloudflare Tunnel provides you with a secure way to connect your resources to Cloudflare without a publicly routable IP address. With Tunnel, you do not send traffic to an external IP — instead, a lightweight daemon in your infrastructure (cloudflared) creates outbound-only connections to Cloudflare’s global network. Cloudflare Tunnel can connect HTTP web servers, SSH serversremote desktops, and other protocols safely to Cloudflare. This way, your origins can serve traffic through Cloudflare without being vulnerable to attacks that bypass Cloudflare. Refer to our reference architecture for details on how to implement Cloudflare Tunnel into your existing infrastructure.

总而言之就是[[Cloudflare]]给你提供了一个把你的服务隧穿到外网的工具,轻量化、长期支持、多到用不完的配额、免费,最重要的是免费,只要你有一个域名。唯一缺点是由于[[Cloudflare Tunnel]]是基于[[Cloudflare]]的全球CDN的,cf的CDN在世界范围内都有分布,当然在中国境内也有,但是只有最高级的订阅用户才能用上中国大陆的cf的CDN,对于普通用户搭建的服务而言,访客访问你的服务是会走洛杉矶的节点,这就导致了平常国内的访问速度会有些慢,高峰期会很慢,不过对于我说也别无选择了,因为cf确实是免费的最优解的,只要把域名托管到上面,cf就会自动帮你配置SSL证书,直接https访问,而且还有一系列缓存加速和防护服务。

于是我在NAS上火速安上了,出了一个小插曲就是cf提供的Cloudflared安装命令是走GitHub安装的,于是不出意外的向GitHub发送的请求直接被GFW拦住了,于是只能找做GitHub加速的,最后还是被我搞好了。

到阿里云(垃圾腾讯云)一块钱买了个域名,就是现在这个deepfog.top,一年的有效期,过了一年续费也是很便宜的,然后托管到了[[Cloudflare]],直接到Cloudflare Trust里添加端口对应的子域名就可以,非常方便。

Cloudflare理论上是不限流量和不限速的,只因GFW效果变得非常差。

刚开始确实是想用WordPress建博客的,也试过,确实可以通过外网访问,但是不知道为什么有无法在web上写文章,应该是服务器和cf的延迟,我在本地调试就不会,于是放弃了,转而用typecho,但是typecho又出bug了,现在是可以写文章了,但是不能换主题。

关于动态博客的尝试都以失败告终,只剩下静态博客的选择,出于速度考量,静态确实非常好,但是麻烦。但是我也没什么选择了,只好按着来,本想搭建Hexo的,但是机缘巧合,一个主题入了眼,就是活版印字,既然是静态博客了,那我直接托管在了GitHub,既然托管在了Github那我直接部署在了Vercel,这样vercal可以直接通过它自己的服务器去访问GitHub从而不用担心GitHub被GFW拦截的问题,同时vercal可以直接配置域名,这就意味着不用套用cf的代理,速度又会上一个层级,并且GitHub的稳定性也可以保证我的文件不丢失、24小时不间断运行,不必担心家里突然停电倒致网站下线,也不用担心遭受攻击。

至于文章,这个静态博客的所有文章都是markdown格式的,刚好我又会点markdown并且正在使用obsidian,直接写好上传到GitHub就是。

我在考虑能不能更优雅地发布文章,比如通过obsidian的插件直接在软件内将md文件发布到GitHub,这样就不必打开网页手动上传这样繁琐。

然后,我的博客就这样呈现在了你的面前。


CC BY-NC-SA 4.0
本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议 进行许可。