在 Debian 上让 Tomcat 绑定域名,通常不是直接“给 Tomcat 绑 IP+域名”,而是通过以下常见方式之一:
先把你的域名 A 记录指向服务器公网 IP:
example.com → 1.2.3.4
Tomcat 一般监听:
127.0.0.1:8080
/etc/tomcat9/server.xml(版本不同可能不同)
<Connector port="8080" protocol="HTTP/1.1"
address="127.0.0.1"
connectionTimeout="20000" />
sudo apt update
sudo apt install nginx
sudo nano /etc/nginx/sites-available/example.com
内容示例:
server {
listen 80;
server_name example.com www.example.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
启用:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
✅ 访问 http://example.com 即可到 Tomcat
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com
<Connector port="80" protocol="HTTP/1.1"
address="0.0.0.0"
connectionTimeout="20000" />
⚠ 注意:
server.xml:
<Host name="example.com" appBase="webapps/example"
unpackWARs="true" autoDeploy="true">
<Alias>www.example.com</Alias>
</Host>
仍建议前端用 Nginx。
✅ 生产环境推荐
域名 → Nginx → Tomcat(8080)
❌ 不建议 Tomcat 直接对外
如果你愿意,可以告诉我:
我可以给你一份完整可直接用的配置。