在 Debian 下排查 JSP 报错,通常可以按下面几个层次来查。我分看日志 → 定位错误 → 常见原因 → 工具建议来说。
JSP 一般运行在 Tomcat / Jetty 等 Servlet 容器中,错误基本都在日志里。
/var/log/tomcat9/ # Debian 常见版本
/var/log/tomcat/ # 有的系统
常用日志文件:
catalina.out # 最重要,JSP 编译/运行错误都在这
catalina.YYYY-MM-DD.log
localhost.YYYY-MM-DD.log
实时查看:
tail -f /var/log/tomcat9/catalina.out
例如:
org.apache.jasper.JasperException:
Unable to compile class for JSP
说明:
查看:
/var/lib/tomcat9/work/Catalina/localhost/你的项目/
里面能看到:
xxx_jsp.java页面能编译,但访问时报 500:
浏览器显示:
HTTP Status 500 – Internal Server Error
解决:
catalina.outjava.lang.XXXExceptionJSP 需要 JDK(不是 JRE)
检查:
java -version
javac -version
Debian 安装:
apt install default-jdk
Tomcat 用的 JAVA_HOME:
echo $JAVA_HOME
一般应是:
/usr/lib/jvm/java-11-openjdk-amd64
Tomcat 用户通常是 tomcat
检查:
ps aux | grep tomcat
项目目录权限:
chown -R tomcat:tomcat /var/lib/tomcat9/webapps/yourapp
WEB-INF/lib/
或
/usr/share/tomcat9/lib/
例如:
<%! int x = 0; %>
在新 Tomcat + 新 JDK 下可能不兼容
建议:
1. 访问 JSP → 报 500
2. tail -f catalina.out
3. 看异常类型
4. 编译错 → 看 work 目录
5. 运行错 → 看堆栈
6. 检查 JDK / 权限 / jar 包
你可以直接把下面内容发我:
catalina.out 中的异常我可以帮你精确定位是哪一行 JSP 出的问题。