cookie可以设置domain和path,但是不能区分端口。本地运行多个项目,用不同端口,导致cookie混用,进而session也乱了
解决办法:
1、多个项目可以指定不同应用名。cookie可以设置path
// 应用1
cookie.setPath("/webapp1");
// 应用2
cookie.setPath("/webapp2");
2、修改tomcat中session的cookie名称JSESSIONID
<Context path="/" docBase="webapp" reloadable="false" sessionCookieName="JSESSIONID1"></Context>
3、nginx反向代理
修改hosts,windows路径为C:\Windows\System32\drivers\etc\hosts
,为不同项目指定假域名
127.0.0.1 www.domain1.com
127.0.0.1 www.domain2.com
配置nginx
server {
listen 80;
server_name www.domain2.com;
location / {
proxy_pass http://127.0.0.1:8081;
}
}
server {
listen 80;
server_name www.domain2.com;
location / {
proxy_pass http://127.0.0.1:8082;
}
}
通过假域名访问不同项目就可以避免cookie混用了
网友评论