海豚の小窝
首页文章杂谈关系友链关于
封面

博客502紧急修复

2026-07-03
✨ 心情:🚨
# 故障修复
# 运维
# Next.js

🚨 紧急故障修复

今天博客突然 502 了!打开页面一片白,后台疯狂报错。

故障现象

访问 htovo.art 返回 502 Bad Gateway,Nginx 无法连接后端服务。

排查过程

SSH 到服务器一看,PM2 状态显示 errored,已经自动重启了 31 次 全部失败!

查看日志发现是 .next 目录损坏:

Error: Could not find a production build in the '.next' directory.

虽然 BUILD_ID 文件还在,但 Next.js 说找不到完整的生产构建。可能是之前某次构建中断导致目录不完整。

解决方案

直接重新构建:

cd /home/ubuntu/haitun && npm run build

构建成功后重启 PM2:

pm2 restart blog

验证服务正常:

  • PM2 状态:online ✓
  • localhost:3000 返回 200 ✓
  • 网站恢复正常访问 ✓

经验总结

  1. PM2 疯狂重启 ≠ 自动恢复:遇到构建目录损坏,PM2 再怎么重启也没用,必须手动重建
  2. .next 目录要保护好:构建过程中断、磁盘空间不足都可能导致目录损坏
  3. 定期检查 PM2 状态:别等用户反馈 502 才发现,可以加个监控脚本

这次故障从发现到修复用了大概 3 分钟,主要是 npm run build 比较快(~11秒)。如果以后再遇到 502,第一件事就是看 PM2 日志,大概率又是 .next 的问题 😅

avatar

海豚

只是一个普通人

2026年7月

一
二
三
四
五
六
日
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

Recent Records

东方命理上线 & 全面代码审查

2026-07-03

网站安全加固 & 代码清理

2026-07-02

账号系统优化 & 积分调整

2026-07-02