weblogic下同域不同端口下的跨域问题解决

Posted lclc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了weblogic下同域不同端口下的跨域问题解决相关的知识,希望对你有一定的参考价值。

 

环境:同一台服务器,同一个Weblogic应用程序,分别建两个域,两个域IP一样,端口不同.一个域里放Web应用A,一个放Web应用B.

 

操作:用户访问A程序的时候,A程序会返回一个链接,让用户去访问B.

 

问题:当用户成功访问到A给出的链接之后,与A的Session就丢失了

 

解决方法:

在A或B的WebInfo下建一个weblogic.xml,里面添加如下配置:
通过在weblogic.xml中进行如下设置后,问题解决。

  1. <session-descriptor>  
  2.  <session-param>  
  3.  <param-name>CookieName</param-name>  
  4.  <param-value>TS</param-value>  
  5.  </session-param>  
  6.  </session-descriptor>  


【问题分析】
同一个Server ServerName = Server01,同一个Weblogic,分别建立两个Domain,Domain01(port-8018)和Domain02(port-8008),将应用App1部署在Domain01,将应用App2部署在Domain02,同时启动这两个Domain,如果完全是默认配置,单独访问两个应用是没有问题的,但是在同一个客户端如果访问App1之后再访问APP2会发现App1的Session丢失。
客户端在访问App1时,Domain01会在该客户端保留一个名为 JSessionID的Cookie,记录了Domain01的信息,JSessionID为Weblogic cookie-name的默认值,当同一个客户端访问App2时,该客户端Cookie中JSessionID的值被Domain02刷新,此时如果在之前已经打开的IE中继续访问App1会发现Session丢失(JSessionID已经被Domain02刷新!)。





以上是关于weblogic下同域不同端口下的跨域问题解决的主要内容,如果未能解决你的问题,请参考以下文章

关于Vue-cli的跨域解决

跨域问题解决

Vue.js学习—— 分别从前后端Nginx解决SpringBoot+vue.js项目中的跨域问题

请求接口时跨域问题,前端解决方法

Spring MVC 的跨域解决方案

前端常见的跨域解决方案