1. 程式人生 > >tomcat在server.xml修改預設的session名稱

tomcat在server.xml修改預設的session名稱

問題描述:

我們程式因為某種原因需要呼叫另一個程式新開啟一個頁面。於是在一臺主機中架了兩個tomcat,現在後臺管理需要加一個預覽按鈕,於是用window.open開啟顯示相關介面也就是說http://192.168.0.200:8080中有一個網頁用window.open開啟http://192.168.0.200:8081的一個介面。會出現session丟失的情況,(父視窗的session會丟失)。當我把外網移動到另一臺伺服器上比如http://192.168.0.159:8081(ip不同),就不會出現問題。 

原因分析:

因為sessionid 在客戶端是儲存在cookie中的
cookie 用 域 來控制對cookie的訪問
和埠無關
當你用以個ip來訪問不同埠的時候
實際域是相同的 也就是說
http://192.168.0.200:8080 http://192.168.0.200:8081
域是一樣的

所以你在預覽的時候 session 被覆蓋成http://192.168.0.200:8081的session
原來的http://192.168.0.200:8080 session 也就消失了

當你用不同的ip地址訪問時 域分別為 192.168.0.200 和192.168.0.159
cookie 分別為這兩個域建立了sessionid 而 sessionid 是用來標示session的

所有就正常 

解決方案:

在server.xml中加入<Context path="" docBase="webapp" debug="0" reloadable="false" sessionCookiePath="/" sessionCookieName="MYSELF_SESSION"/>給每個tomcat起不同的session名稱

相關推薦

tomcat在server.xml修改預設session名稱

問題描述: 我們程式因為某種原因需要呼叫另一個程式新開啟一個頁面。於是在一臺主機中架了兩個tomcat,現在後臺管理需要加一個預覽按鈕,於是用window.open開啟顯示相關介面也就是說http://192.168.0.200:8080中有一個網頁用window.open

eclipse修改預設作者名稱

在使用Eclipse編寫Java程式碼時,自動生成的註釋資訊都是預設是使用的當前登入系統使用者名稱:   /** * @author administrator */ 如果我們想修改成我們自己的名字怎麼辦呢? 以下介紹的三種方法(也可以應

【SpringBoot】 啟動時,修改預設配置檔名稱

前言 spring boot version : 2.0.0.RELEASE maven version : 3.5.0 在不同的環境下,依賴的外部資源是不一樣的。比如,在windows上開發,在linux下進行測試時,無法將開發環境和測試i環境構造成一致的。

axis2 介面預設引數名稱和方法返回值變數名修改

1、註釋生成      在axis2+Spring結合釋出的場合,客服端呼叫時,介面函式引數的預設名稱為axis2的預設設定(如arg0),而呼叫方更想看到的是具體引數的名稱(如:testName)。 package wip; import javax.jws.WebPa

tomcat修改預設訪問專案名稱和專案釋出路徑

1、修改專案釋出路徑 tomcat預設的而釋出路徑為 tomcat/webapps/目錄,但是這個目錄下有一些預設的專案,在tomcat啟動的時候會跟著一起載入。如果不想刪除這些專案,可以把tomcat釋出的路徑修改到其他地方。 找到tomcat/conf/serve

xml 序列化時, 去掉預設名稱空間

and //Create our own namespaces for the output XmlSerializerNamespaces ns = new XmlSerializerNamespaces(); //Add an empty namespace a

Sublime 修改預設快捷鍵和格式化josn ,xml

修改預設快捷鍵 例如:刪除行 開啟 按鍵繫結-預設 找到 : Ctrl+Shift+K 拷貝出來 –> 開啟 –> 按鍵繫結-預設–> 貼上進去–> 儲存 示例 [ { "keys": ["c

android修改行動式熱點的預設SSID名稱

1)TD專案修改alps\mediatek\source\frameworks\base\core\res\res\values\Strings.xml中 的wifi_tether_configure_ssid_default_for_cmcc變數 2)非TD專案修改alp

修改eclipse中settings.xml預設資源庫儲存地址

1.開啟eclipse 2.window-->references-->Maven0-->User Settings:修改User Settings,Browse重新選擇新位置D:\gongsi\apache-maven-3.1.0\conf\setting

CentOS 7.2修改網卡名稱

device cnblogs scripts sysconf ns3 cmd 名稱 ifcfg-eth centos 7 #!/bin/bash #Centos7.2修改網卡名稱ens33為eth0 #2017/05/19 if [ -f /etc/sysconfig

android學習-第二講(修改項目名稱和圖標,log,過濾器)

pre activit png activity 圖標 alt 類名 mage ani 一、在app/src/main/res下有 AndroidManifest.xml打開,打開後如下圖1 二、日誌工具log log.v() log.d() log.i() l

centos7修改網卡名稱

運行命令 進入 name 命名 bios wap sco scrip 改網卡名 1:進入vim /etc/sysconfig/network-scripts目錄 2:先編輯網卡的配置文件將裏面的NAME DEVICE項修改為eth0 vim /etc/sysc

oracle 修改 字段名稱

add drop pan mil spa update rop lib lob 暫時應該沒有對應的方法,所以我用自己想好的方法去修改 /*修改原字段名name為name_tmp,是將想改名稱的字段改為沒用/臨時的字段*/ Alter table 表名 rename

ubuntu修改網卡名稱,找不到eth0,無法ssh鏈接問題記錄

虛擬機 inux ubun mod ubunt long 問題解決 clas tar 一、修改網卡名稱: 如出現網卡名稱不是eth0,可以將/etc/default/grub文件編輯,然後添加一下內容: vi /etc/default/grub 然後通過update-

tomcat修改進程名稱

classpath copy int jre 進程 code 一行 重啟tomcat pan 1、window平臺: 打開tomcat_home\bin\setclasspath.bat文件,找到set _RUNJAVA=”%JRE_HOME%\bin\java”這一行。

CentOS7修改網卡名稱,禁用ipv6

true recovery out 改網卡名 網卡名 方便 osd ons cnblogs 有時候新裝的CentOS7系統網卡默認名稱是eno16777736,為方便改成傳統eth0 修改網絡配置文件 # cd /etc/sysconfig/network-script/

Intellij IDEA中修改項目名稱

class cnblogs 技術分享 clas src markdown tel 修改 margin 如下圖紅色標識所示:修改方法見下圖: Intellij IDEA中修改項目名稱

Xcode修改項目名稱

targe idt pen clas scheme sig 教程 ech orien 經常用到xcode項目需要修改名稱的時候,但是又怕改的不徹底,網上學習大神的教程後,感覺修改的很好,寫下來記錄一下: 1.修改工程名字 .打開工程 點擊工程名稱 回車 直接修改 .此時會

Linux修改網卡名稱enss33到eth0--Ubuntu16和centos7

work etc wap config roo kcon fault rhgb linux 新裝的Ubuntu16.04和centos7的默認網卡名稱都是ens33。想要修改為eth0。 一、centos: 修改/etc/sysconfig/grub文件(修改前先備份)

mysql中利用sql語句修改字段名稱,字段長度等操作

HA change 是我 重構 不為 ble 技術 網站重構 add 在網站重構中,通常會進行數據結構的修改,所以添加,刪除,增加mysql表的字段是難免的,有時為了方便,還會增加修改表或字段的註釋,把同字段屬性調整到一塊兒。這些操作可以在phpmyadmin或者別的mys