Logo

为 Next.js 静态导出实现图片优化

Avatar

Skyone

科技爱好者

如你所见,我的 Blog 是基于 Next.js 开发的,使用的是静态导出扔到 Cloudflare Pages,省心省事。

我不使用图床,习惯将图片和文章一起在同一个仓库里管理。然而 Next.js 的图片优化在静态导出模式下是不可用的。 后端是纯静态的,确实无法在运行时生成适合浏览器的图片。

但图片优化真的不能做吗?显然不是,下面我将分享我的做法。

使用 mTLS 保护自建服务

Avatar

Skyone

科技爱好者

飞牛OS 路径穿越漏洞敲响警钟:仅靠强密码无法防御软件漏洞。

本文详解如何用 mTLS(双向 TLS 认证)保护自建 NAS、Web 服务、API 等,包含反向代理配置(以 Traefik 为例)、OpenSSL 生成证书、浏览器/App 导入证书的指南。

使用TinyAuth和Traefik实现简单的认证代理

Avatar

Skyone

科技爱好者

你是否遇到过需要为不支持认证的服务添加认证的情况?TinyAuth 是一个轻量级的认证代理,可以帮助你为这些服务添加基本的认证。本文将介绍如何使用 TinyAuth 和 Traefik 实现简单的认证代理。

TinyAuth 支持包括 GitHub OAuth、简单密码认证在内的多种认证方式,这里我使用 Pocket ID 为例。

使用Cloudflare Warp隐藏Misskey的IP地址

Avatar

Skyone

科技爱好者

我一直使用 Cloudflare tunnel 来隐藏 Misskey 的 IP 地址,但是昨天晚上忽然想到,由于 misskey 是基于 ActivityPub 协议的,在服务器与其他服务器之间的通信中,IP 地址是公开的,如果攻击者构造了一个恶意的 ActivityPub 实现,马上就能拿到 Misskey 源站的 IP 地址。

想要避免这种情况,只能为 Misskey 的源站添加代理,而 Cloudflare Warp 就是一个不错的选择。本文根据大佬们的经验完成了 Misskey 的 Cloudflare Warp 配置。

近期概况(2025年7月)

Avatar

Skyone

科技爱好者

如你所见,博客已经有一段时间没有更新了,今天抽空来除除草,也让大家这个网站还在持续更新。

最近工作比较忙,项目在赶进度,确实是没有多少时间来写博客。虽然如此,最近还是有一些事情可以分享的,那么就开一个新的系列「随笔」吧,不定期 记录最近做的有趣的事(实际上就是水文(

Btrfs快照方案

Avatar

Skyone

科技爱好者

去年从 ext4 文件系统切换到了 btrfs,当时主要看中的是快照功能。最开始使用的是 timeshift,能用,但是可定制性不够,遂尝试 直接手动创建快照。

自从用了快照,最显著的变化是:折腾各种危险的东西再也不需要使用虚拟机,直接host开搞,最坏不过回滚一下快照,重新生成一下 GRUB,一个健康的系统就又回来了。

当然,快照大多了,就开始考虑怎么自动化,于是简单写了个脚本,试了一下还不错,放在本文后面了。

使用 Rust 实现自己的评论系统

Avatar

Skyone

科技爱好者

最近发现博客的评论系统后端有点问题,占用内存过于的大了(基于 Node.js + PostgreSQL,RES 内存占用 200MB+55MB),这不正常。而且我在国内的唯一一个服务器只有 2G 内存,很容易就被干满了。所以决定使用一个编译型语言重写一下。

最开始选的其实是 Golang,因为被网上传的 Rust 入门太难吓住了😂,试了一下发现 Golang 的 ORM 实在是太难用了,而且我非常讨厌 Golang 的语法,所以还是决定用 Rust 了。

使用 Docker 部署 PeerTube

Avatar

Skyone

科技爱好者

PeerTube 是一个自由开源的去中心化视频分享平台,它使用 WebTorrent 技术来实现 P2P 视频流传输。本来想用 PeerTube 来搭建一个视频分享平台,但是发现 PeerTube 的 Docker 部署文档有很多缺失的细节,所以写了这篇文章来记录一下 PeerTube 的 Docker 部署过程。

我已经搭建好了一个示例,大家可用访问 https://video.akk.moe 查看效果。


隐私政策

Copyright © Skyone2026