在 Debian 上通过 Tomcat + 域名 访问网站,通常有三种常见做法。下面从最简单到最规范逐步说明。
适合:生产环境、多站点、HTTPS
/opt/tomcat 或 /var/lib/tomcat9)8080www.example.com → 服务器 IP)sudo apt update
sudo apt install nginx -y
sudo nano /etc/nginx/sites-available/example.com
示例配置:
server {
listen 80;
server_name www.example.com example.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
启用配置:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
✅ 现在访问 http://www.example.com 即可进入 Tomcat
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d www.example.com
适合:测试、单应用
sudo nano /opt/tomcat/conf/server.xml
<Connector port="80" protocol="HTTP/1.1"
address="0.0.0.0"
redirectPort="443" />
⚠️ 注意:
<Engine name="Catalina" defaultHost="www.example.com">
<Host name="www.example.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
重启 Tomcat:
sudo systemctl restart tomcat9
mv myapp.war /opt/tomcat/webapps/ROOT.war
sudo ufw allow 80
sudo ufw allow 443
| 场景 | 推荐方案 |
|---|---|
| 生产环境 | Nginx + Tomcat |
| 多域名 | Nginx 反向代理 |
| 本地测试 | Tomcat 直接访问 |
| HTTPS | Certbot |
如果你愿意,可以告诉我:
我可以给你完全定制化的配置。