Frage Tomcat-Cookies funktionieren nicht über meinen ProxyPass VirtualHost


Ich habe einige Probleme damit, dass Cookies funktionieren, wenn ich einen ProxyPass verwende, um den Verkehr auf Port 80 zu einer über Tomcat gehosteten Webanwendung umzuleiten.

Meine Motivation, Cookies zu aktivieren, besteht darin, den Parameter "jsessionid =" loszuwerden, der an die URLs angehängt wird.

Ich habe Cookies in meiner context.xml in META-INF / für meine Webanwendung aktiviert.
Wenn ich über die Webapplikation aufrufe http: // url: 8080 / webapp Es funktioniert wie erwartet, der Parameter jsessionid ist in der URL nicht sichtbar, sondern in einem Cookie gespeichert.

Beim Zugriff auf meine Website über einen apache2 virtualhost scheinen die Cookies nicht zu funktionieren, da nun "jsessionid" an die URLs angehängt wird. Wie kann ich dieses Problem lösen?

Hier ist meine VHost-Konfiguration:

<VirtualHost *: 80>
        Servername somedomain.no
        ServerAlias ​​www.somedomain.no

        <Proxy *>
                Bestellverweigerung, erlauben
                Erlaube von allen
        </ Proxy>

        ProxyPreserveHost Aus
        ProxyPass / http: // localhost: 8080 / webapp /
        ProxyPassReverse / http: // localhost: 8080 / webapp /

        Fehlerprotokoll /var/log/apache2/somedomain.no.error.log
        CustomLog /var/log/apache2/somedomain.no.access.log kombiniert
</ VirtualHost>

EDIT: Der Cookie wird tatsächlich gesetzt. Ich vermute, dass das Problem darin besteht, dass der Cookie den "Pfad: / webapp" enthält.


10
2018-04-17 18:09


Ursprung


Antworten:


Ich habe es herausgefunden.

Fügen Sie dies der VHost-Konfiguration hinzu:

ProxyPassReverseCookiePfad / webapp /

20
2018-04-17 19:31