nginx+tomcat实现单ip,多域名,多项目配置,session有效

Posted swbzmx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx+tomcat实现单ip,多域名,多项目配置,session有效相关的知识,希望对你有一定的参考价值。

首先,多域名解析到单ip在此不做叙述
空间提供商一般都会有此类解析服务

1.首先看nginx如何配置多域名

多域名意味着多个server节点,假如我们有域名www.a.com和www.b.com,我们可以如下配置

server {
    listen 80;
    server_name www.a.com;
}
server {
    listen 80;
    server_name www.b.com;
}

 

这两个节点都监听在80端口,这样在浏览器访问两个域名就都会访问此nginx服务器了

2.再看如何把不同的网站请求发送到tomcat不同的项目
假设我们有两个项目,一个projecta,一个projectb
www.a.com映射到projecta,www.b.com映射到projectb

server {
    listen 80;
    server_name www.a.com;
    location / {
        proxy_pass http://tomcat监听ip:8080/projecta/;
    }
}
server {
    listen 80;
    server_name www.b.com;
    location / {
        proxy_pass http://tomcat监听ip:8080/projectb/;
    }
}

 

这样,访问不同的域名就会映射到不同的tomcat项目上面了

3.tomcat需要做两方面配置
第一个是server.xml中,Host节点下添加:

<Context docBase="a" path="/a" />
<Context docBase="b" path="/b" />

 

第二个是context.xml中,Context节点添加属性 sessionCookiePath=”/”
保证session有效

4.jsp页面中,将路径设置为相对路径就可以了。

以上是关于nginx+tomcat实现单ip,多域名,多项目配置,session有效的主要内容,如果未能解决你的问题,请参考以下文章

nginx+tomcat集群配置--rewrite规则和多应用根目录设定思路

nginx+tomcat实现单个IP地址,多个二级域名+多个站点访问

nginx+tomcat实现单个IP地址,多个二级域名+多个站点访问

Nginx和tomcat实现负载均衡

Nginx+Tomcat可以配置单Tomcat多应用多域名吗?

Nginx和tomcat实现负载均衡