Nginx配置多个tomcat(多web Shiro项目)配置方案 --在外部直接通过一个域名 访问 同一台服务器,下面多个tomcat的多个分布式项目了。...

本文详细介绍了如何配置Nginx以实现对多个Tomcat应用的服务代理,并通过二级域名进行区分。同时,针对Shiro项目的分布式部署需求,文章还讲解了如何设置Cookie以避免在分布式环境下出现冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,配置nginx的conf.xml


events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
       
server {
        listen 80;
        server_name bbb.qztc.edu.cn;
        location / {
          
            proxy_pass  http://127.0.0.1:1901/sso/;
        }
        #单点登录
		location /sso/ {
            proxy_pass  http://127.0.0.1:1901/sso/;
        }
        #平台基础
        location /manage/ {
            proxy_pass http://127.0.0.1:1902/manage/;
        }
        #资源
        location /resource/ {
            proxy_pass http://127.0.0.1:1903/resource/;
        }
        #交流
        location /discussion/ {
            proxy_pass http://127.0.0.1:1904/discussion/;
        }
        #实验
        location /vlab/ {
            proxy_pass http://127.0.0.1:1906/vlab/;
        }
        #实验
        location /vcoocResource/ {
            proxy_pass http://127.0.0.1:1910/vcoocResource/;
        }
        
    }
}

由于向外只开放了一个80端口,这里我只能这样配置。并通过主域名的二级域名来区分

这样配置还是不行的,因为我的是shiro项目,分布式项目的话,还需要确保cookie不被覆盖。在shiro配置文件中这样配置:

 <!--设置cookie-->
	 <!-- 会话Cookie模板 -->
    <bean id="sessionIdCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
        <constructor-arg value="sid"/>
        <!--设置Cookie名字,默认为JSESSIONID-->
        <property name="name" value="vcoocUserId" />
        
        <!-- cookie生效路径 -->
    	<property name="path" value="/"/>
		<!--设置主域名-->
		<property name="httpOnly" value="true"/>
        <!-- 配置存储rememberMe Cookie的domain为 一级域名 -->
        <property name="domain" value=".bbb.qztc.edu.cn"/>
    </bean>

这样就能在外部直接通过一个域名 访问 同一台服务器,下面多个tomcat的多个分布式项目了。

转载于:https://my.oschina.net/linwl/blog/1813441

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值