Nginx

同一使用者的 Java 多個 HttpSession ID

  • July 19, 2019

我對會話有一些問題。當我從本地資源嘗試我的項目並多次刷新包含以下程式碼的 JSP 時:

<h1>Session ID=<%=session.getId()%></h1>

它始終顯示相同的 ID。好的。

問題是我已經將項目部署在遠端伺服器中,當我重新載入相同的 JSP 時,每次刷新頁面時它都會返回一個不同的會話 ID 。

遠端伺服器正在使用https(SSL 證書)和NGINX反向代理(如果此資訊有幫助…)。

我究竟做錯了什麼?

需要任何額外的資訊,請告訴我,我會給你。

PS。更多資訊:如果我使用遠端伺服器的 IP 和埠訪問遠端伺服器,似乎可行,每次刷新頁面時都會給我相同的會話 ID。

我已經解決了這個修改 NGINX 和 Tomcat 中的一些配置文件的問題。

在 NGINX 中,我刪除了proxy-cache我在伺服器配置中編寫的行。

在Tomcat中,我設置context.xml如下:

<Context path="/" 
        reloadable="false" 
        override="true" 
        useNaming="false" 
        allowLinking="true" 
        useHttpOnly="false" 
        sessionCookiePath="/" 
        sessionCookiePathUsesTrailingSlash="false"/>

它有效!:)

引用自:https://serverfault.com/questions/975764