在 Debian 上部署 JSP(通常是基于 Tomcat / Jetty 等 Servlet 容器)时,有几个关键点和常见坑需要注意。下面按「系统准备 → 容器选择 → 部署配置 → 安全与运维」来总结。
amd64 / arm64uname -a
JSP 需要 JDK(编译 JSP 用):
apt update
apt install default-jdk
java -version
推荐 OpenJDK 11 或 17(视项目要求)
JSP 不能直接跑,必须靠容器:
| 容器 | 特点 |
|---|---|
| Apache Tomcat | 最常用,JSP 支持好 |
| Jetty | 轻量 |
| WildFly | Java EE 全家桶 |
apt install tomcat9
或手动下载官方 Tomcat(更可控)
标准 Web 应用结构:
yourapp/
├── WEB-INF/
│ ├── web.xml
│ └── classes/
│ └── lib/
├── index.jsp
└── *.jsp
放到:
/var/lib/tomcat9/webapps/yourapp/
查看日志:
tail -f /var/log/tomcat9/catalina.out
Debian 下 Tomcat 默认用户是:
tomcat
确保:
chown -R tomcat:tomcat /var/lib/tomcat9/webapps/yourapp
⚠️ 安全风险极大
修改:
/etc/tomcat9/server.xml
ufw allow 8080
生产建议:
用户 → Nginx(80/443) → Tomcat(8080)
好处:
删除或限制:
/var/lib/tomcat9/webapps/manager
/var/lib/tomcat9/webapps/host-manager
web.xml 中:
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
✅ 检查项:
常用命令:
systemctl status tomcat9
journalctl -u tomcat9
❌ JSP 白屏 / 500
→ 看 catalina.out
❌ 中文乱码
→ JSP 加:
<%@ page contentType="text/html;charset=UTF-8" %>
❌ apt 版 Tomcat 太旧
→ 手动装官方版
如果你愿意,可以告诉我:
我可以直接给你一份可用的部署步骤或示例配置。