常见404 500错误解析

一、常见404 500错误解析

  • 浏览器:用户发起请求的入口,地址栏输入 URL、AJAX 请求都从这里发。
  • 服务器:本质就是一台电脑,Tomcat 在这里负责接收请求、分发处理。
  • 前端层:存放静态页面,处理页面渲染、用户交互。
  • 后台层:Servlet 接收请求、处理业务逻辑、调用数据库。
  • 数据库:存储数据,通过 JDBC 和后台交互。
    404错误和500错误总体如图:

(1)404错误

常见的404错误有两种,一种是在页面上直接显示404错误,另一种是在控制台报404错误,如图所示:

情况1:浏览器地址栏输入 URL,直接访问服务器上的静态资源(xxx.html),服务器找不到文件 → 页面直接显示 404。

问题本质:

主请求(地址栏的 URL)失败了,服务器根本没找到你要访问的资源。

常见原因:

**核对 URL:**项目上下文路径、文件名是否和实际一致。

检查文件位置: 确认文件在 webapp/resources/static/ 下。

**看 Tomcat 日志:**是否有文件找不到的警告。

情况二:主页面加载成功了(主请求 200),但页面里的 AJAX 请求 / 资源请求失败,控制台报 404 → 主页面正常,部分功能失效。

问题本质:

主请求成功(200),但页面里的附属请求失败了

常见原因:

**页面里的资源路径错误:**图片、css、js 文件的相对路径 / 绝对路径写错,服务器找不到。

**AJAX 请求的后端接口路径错误:**Servlet 的 urlPatterns 和前端请求的地址不匹配。

**跨域问题:**前端请求的地址和服务器端口 / 域名不一致,导致请求被拦截(也可能报 404)。

(2)500错误

服务器收到了请求,但处理时出错了:

问题本质:

服务器内部错误,请求到了后台代码里,但代码执行报错了。

常见原因:

Servlet 代码报错:空指针异常、数组越界、类型转换错误等 Java 代码异常。

**数据库连接失败:**JDBC 配置错误(URL、账号密码写错)、MySQL 没启动、驱动版本不兼容。

**SQL 语句错误:**SQL 语法写错、表名 / 字段名错误、参数不匹配。

相关推荐
希望奇迹很安静32 分钟前
数通基本实验
运维·服务器·网络
ITxiaobing20232 小时前
如何构建IP维度的假量排查流程:以AppsFlyer Protect360判假后的实战为例
网络·数据库
Eira-Z2 小时前
git(持续学习中...)
git·学习
Eloudy2 小时前
基于 RDMA-CM(librdmacm)的聊天程序
网络·人工智能
子非鱼94272 小时前
07-Flutter 鸿蒙实战 07:故事集列表与缓存设计
学习·flutter·缓存·华为·harmonyos
fanchenxinok2 小时前
学习笔记:LabVIEW中如何将解析S19/HEX的VI封装为子VI并供主VI调用
笔记·学习·labview·子vi
(Charon)2 小时前
【C/C++】手写内存池(三):大块内存的申请、记录与单独释放
网络
2301_809051142 小时前
基本电子电路元件 学习笔记
笔记·学习
今天AI了吗3 小时前
Hermes Agent 搭建全流程:从本机试跑到可持续运行的个人 AI Agent
java·人工智能·python·学习·embedding
一只小菜鸡..4 小时前
Stanford CS144 学习笔记 (二):传输层与数据通信机制
网络·笔记·学习