温馨提示×

Debian Tomcat怎样配域名

小樊
36
2026-09-15 16:02:22
栏目: 云计算

在 Debian 上给 Tomcat 配置域名,通常分为 DNS/服务器层面Tomcat 层面 两部分。下面按常见场景说明。


一、前提条件

  1. 已安装 Tomcat(如 /opt/tomcat/var/lib/tomcat9
  2. 已有一个域名(如 www.example.com
  3. 服务器有公网 IP(或内网 + 局域网解析)

二、DNS 解析(必须)

在你的域名服务商处添加解析:

  • A 记录
    www.example.com → 服务器IP
    
  • 如需根域名:
    @ → 服务器IP
    

生效通常需要几分钟到几小时。


三、Tomcat 本身绑定域名(推荐方式)

方法 1:修改 server.xml(最常用)

编辑 Tomcat 配置文件:

sudo nano /opt/tomcat/conf/server.xml

(路径可能是 /etc/tomcat9/server.xml

找到 <Host> 节点,修改或新增:

<Host name="www.example.com"  appBase="webapps"
      unpackWARs="true" autoDeploy="true">
    <Context path="" docBase="yourApp" />
</Host>

说明:

  • name:你的域名
  • docBase:webapps 下的项目名(如 ROOTmyapp
  • path="":访问域名直接进项目

重启 Tomcat:

sudo systemctl restart tomcat

访问:

http://www.example.com:8080

四、使用 80 端口(不用输 8080)

方法 1:改 Tomcat 端口(不推荐生产)

<Connector port="80" protocol="HTTP/1.1" />

需 root 权限运行 Tomcat,不推荐


方法 2:用 Nginx 反向代理(✅ 推荐)

1. 安装 Nginx

sudo apt update
sudo apt install nginx

2. 配置域名

sudo nano /etc/nginx/sites-available/example.com

内容示例:

server {
    listen 80;
    server_name 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://www.example.com

五、HTTPS(可选但建议)

使用 Let’s Encrypt:

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d www.example.com

六、常见坑

  • Tomcat 没监听 0.0.0.0
  • 防火墙未开放 80/443
  • 域名未解析到正确 IP
  • Host name 写错

如果你告诉我:

  • Tomcat 版本
  • 是否用 Nginx
  • 单域名还是多域名

我可以给你一份精准配置示例

0