从零搭建一个带风后奇门的个人博客
Next.js 16 + Tailwind v4 + Prisma + 奇门遁甲罗盘。从技术选型到踩坑复盘,一篇全栈博客开发的完整记录。
共 41 篇
用户反馈退出登录后再登录会卡在"登录中"。后端 curl 全链路正常,但 Network 面板显示登录成功后根本没有请求 /api/auth/session——signIn(redirect:false) 后 useSession 没刷新,status 卡在 unauthenticated。修复:成功后主动调用 update()。
部署 tar 悄悄从 65MB 涨到 4.1GB,磁盘被撑满 100%,上传中断留下半截 standalone,服务 502。根因是历史安装包在 public 目录无限累积被塞进部署包。记录恢复过程与部署脚本改进。
两条用户反馈:一条暴露了默写成绩里隐藏许久的累加 bug,另一条竟是怀念一个被我修掉的并发 bug。把两件事放在一起复盘,顺带讲清套壳应用"热更 vs 发版"的边界。
用户报了个很玄学的 bug:闪卡里的长单词 meteorological 显示成了 neteorological,首字母像被削了头。排查后发现是 flexbox 的经典坑——flex 子项缺 min-w-0,break-words 形同虚设,长单词溢出被 overflow-hidden 裁掉首尾。顺手全库排查出 9 处同根因问题。
上一篇刚修好 Header,本以为可以下班。但用户说体验阻塞,又做了一轮系统审计。5 个真问题:登录后 /login 还显示表单、Header 不显示上传头像、Profile 改完 Header 状态不同步、anon 访问 /u/X/edit 闪加载中、Comment 链接用 snapshot 改名后 404。修复用 4 个 batch:layout 服务端 redirect、JWT 扩展字段、credentials authorize 补 image、mutation 后 session.update()
把 4 个路由挪进 (public)/ 让 Header 套上后,curl 检查都通过。但用户实际打开首页看不到头像下拉。根因不是路由位置,而是首页嵌的装饰性 nav 跟真 Header 共用同一个 .nav CSS 类,物理位置完全重叠,把真的盖住了。
本以为只是删掉几个文件的事,结果部署上去 admin 500,然后用 npm install 在服务器现场装依赖,把博客搞崩了两次。复盘根因:deploy.sh 没把动态 import 的依赖打进 standalone bundle。