Tomcat-Nginx虚拟主机配置

    之前在项目中需要单服务器实现多域名,因为域名是直接指向ip的,所以认为单服务器Tomcat只能实现单域名映射(端口80),但是对Nginx有部分了解,所以使用了Nginx的基于域名的虚拟主机设置(server_name),后来看资料发现Tomcat也支持多虚拟主机:

Nginx配置:

server {
    server_name ~^(www\.)?(.+)$;

    location / {
        // 指向Tomcat实例
        proxy_pass http://127.0.0.1:8080/;
    }
}

server {
    server_name domain.com;

    location / {
        root /sites/default;
    }
}

基于host的虚拟主机:

<Engine name="Catalina" defaultHost="host0">

<Host name="host0" appBase="webapps0" unpackWARs="true" autoDeploy="true">

<Host name="host1" appBase="webapps1" unpackWARs="true" autoDeploy="true">

另外,单Tomcat支持多端口监听:

<Service name="Catalina0">

<Service name="Catalina1">

你可能感兴趣的:(Tomcat-Nginx虚拟主机配置)