当使用ProxyPass将端口80上的流量重定向到通过Tomcat托管的Web应用程序时,我遇到了使cookie工作的一些问题 .
我启用cookie的动机是摆脱附加到URL的“jsessionid =”参数 .
我在META-INF /的context.xml中为我的Web应用程序启用了cookie .
当我通过http://url:8080/webapp访问webapplication时,它按预期工作,jsessionid参数在URL中不可见,而是存储在cookie中 .
当通过apache2虚拟主机访问我的网站时,cookie似乎不起作用,因为现在“jsessionid”被附加到URL . 我该如何解决这个问题?
这是我的VHost配置:
<VirtualHost *:80>
ServerName somedomain.no
ServerAlias www.somedomain.no
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPreserveHost Off
ProxyPass / http://localhost:8080/webapp/
ProxyPassReverse / http://localhost:8080/webapp/
ErrorLog /var/log/apache2/somedomain.no.error.log
CustomLog /var/log/apache2/somedomain.no.access.log combined
</VirtualHost>
编辑:实际上正在设置cookie . 我猜测问题是cookie包含“Path:/ webapp” .
1 回答
我想到了 .
将其添加到VHost配置: