Apache Tomcat 7 Ändern JSESSIONID auf Jede Anfrage

Dieses Problem treibt mich in den Wahnsinn, also vielleicht jemand könnte mir helfen zu verstehen, was das Problem ist. Ich habe eine tomcat-Webapplikation, angeführt von HAProxy. HAProxy ist auch SSL-Verschiebung und konfiguriert ist, um sticky sessions. Ich bin mit der Tomcat session replication feature, das scheint zu funktionieren nur fine. Die Sitzungen erscheinen auf den beiden Anwendungsserver verwenden.

Aus irgendeinem Grund, Tomcat ist die Erzeugung eines neuen JSESSIONID für jede einzelne web-Anfrage, und dann kopieren den Inhalt der alten session in die neue session. Das ist zu sagen, dass meine session-Inhalte sind immer noch da in der neuen session, sondern eine neue ID generiert und an den client zurückgeschickt. Aber es macht nur dieses für meine web-Anwendung. Er tut es nicht für den /manager-Anwendung.

Habe ich versucht jeden trick im Buch, wie Sie dies in meine context.xml:

<Valve className="org.apache.catalina.authenticator.BasicAuthenticator" changeSessionIdOnAuthentication="false" />

Und setzen diese Attribute auf meine Context-element:

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

Und dennoch, das Ergebnis ist das gleiche. Tomcat generiert eine neue session-id mit jeder Anfrage und kopiert den Inhalt der alten session in die neue id.

Ich würde vermuten, es hatte etwas zu tun mit HAProxy, außer dass der - /manager-Anwendung ist auch hinter HAProxy und es weist dieses Verhalten nicht.

Warum ist Tomcat, dies zu tun, und was kann ich tun um es zu verhindern?

Vielleicht ein stateless JSP? session=true. (Würde nicht Gaben an, dass in Ihrem Fall aber.)
Sorry, ich bin dir nicht folgt. Ich bin auch nicht der Kollision mit einem JSP für meinen test.
Ich Frage mich, was war das eigentliche Problem mit diesem. Welchen Schaden tut es das, wenn JSESSIONID verpasst?

InformationsquelleAutor Nobody | 2013-01-22

Schreibe einen Kommentar