部署后404报错
一句话:网站本地正常,部署后访问页面或接口却显示404,通常是路由、构建输出、代理路径或平台配置问题。
它是什么
部署后404表示服务器收到了请求,但没有找到对应资源。它可能发生在前端路由刷新、API路径、静态文件路径、反向代理转发、Vercel/Netlify路由规则、Nginx配置等位置。
适合干什么
- 本地能访问,线上打不开页面的人
- 部署React、Vue、Next.js、Express项目的新手
- 配置Nginx或Docker后访问404的人
- AI编程后不知道怎么排错的人
不适合干什么
- 服务器完全无法连接的网络问题
- 域名还没解析到服务器的问题
- 代码运行崩溃导致的500错误
- 认证失败导致的401或403
普通人怎么用
- 确认访问的是页面404还是接口404
- 检查部署平台的构建输出目录
- 检查前端路由是否需要fallback到index.html
- 检查API路径前缀是否和本地一致
- 查看服务器或平台日志
进阶用户怎么用
- 用curl分别测试根路径、页面路径和API路径
- 检查Nginx try_files或反向代理location
- 确认Docker容器端口和代理端口一致
- 为前端SPA配置重写规则
常见误区
- 把dist、build、.next输出目录配置错
- 前端刷新子页面没有fallback
- 线上API多了或少了/api前缀
- Nginx location顺序导致请求被错误匹配
和相似工具的区别
- 404 vs 500:404是没找到路径或资源,500是服务器处理时出错。
- 页面404 vs 接口404:页面404多看前端路由和静态托管规则,接口404多看后端路由和代理路径。
入门步骤
- 确认URL
- 区分页面和接口
- 查构建目录
- 查路由规则
- 查代理配置
- 看日志
- 修复后回归测试
推荐工具(第三方)
curl、Chrome DevTools、Vercel、Nginx、Docker、Codex