V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
find456789
V2EX  ›  问与答

单个域名,反向代理了多个不同网站,如何管理 cookies 混乱的问题?

  •  
  •   find456789 · Jan 11, 2019 · 2080 views
    This topic created in 2673 days ago, the information mentioned may be changed or developed.

    我有个域名 xxx.cc

    用 caddy (类似 nginx 的 web 服务器) 反向代理了几个网站 a.com b.com c.com

    我希望 当我访问 xxx.cc/a 就反向代理 a.com , 当我访问 xxx.cc/b 就反向代理 b.com

    目前我实现了这个功能, 但是当我实际使用的时候,我发现 cookies 会互相冲突

    这几个网站,部分 cookie name 是一样的

    当我访问 xxx.cc/a 登陆了自己的账号后, 完成了我的操作, 这时候我访问 xxx.cc/b 登陆 b 网站的账号后

    再访问 xxx.cc/a, 发现 a 的账号已经退出了, 因为 对应 cookies 被 b 网站给覆盖了

    所以我想到了一个可行的办法, 就是 让 a 网站的 cookie 作用域为 /a, b 网站 cookie 的作用域为 /b

    但是我不知道如何在 caddy ( nginx )中操作

    我在网上搜了很久, 也没有找到解决的办法

    所以来这里求助大家

    求大神指点

    5 replies    2024-11-04 11:14:49 +08:00
    find456789
        1
    find456789  
    OP
       Jan 11, 2019
    自己回答

    nginx 可以用 proxy_cookie_path 实现这个

    点赞 👍
    bluehr
        2
    bluehr  
       Jul 31, 2020
    楼主能给个 demo 吗,我配置了几个小时了就是不生效, 反代的几个应用 cookie 都是 /路径,会导致 cookie 覆盖的问题
    case 如下,如能帮忙看看,不胜感激!
    ```
    location /p1/{
    #proxy_set_header Cookie $http_cookie;
    #proxy_set_header X-Real-IP $remote_addr;
    #proxy_set_header Host 192.168.100.51:18080;
    #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    #proxy_pass_request_headers on;
    proxy_pass http://192.168.100.51:18080/;
    proxy_cookie_path / /p1/;
    }
    location /p2/{
    proxy_set_header Cookie $http_cookie;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host 192.168.100.50:18080;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    #proxy_pass_request_headers on;
    proxy_pass http://192.168.100.50:18080/;
    proxy_cookie_path / /p2/;
    }
    ```
    find456789
        3
    find456789  
    OP
       Aug 1, 2020
    @bluehr

    你好,我后来发现自己搞不定,所以就没有弄了 。

    现在我的项目是分配在不同域名下的, 也就不会有这个问题了, 也就没有深入研究了
    bluehr
        4
    bluehr  
       Aug 1, 2020
    @find456789 哈哈好的,我后来似乎把它给整好了,感谢回复!。
    dongfangyihaolan
        5
    dongfangyihaolan  
       Nov 4, 2024
    @bluehr 都是人才,弄好了贴一下咋弄的,造福下后面的 XD 啊
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   935 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 20:30 · PVG 04:30 · LAX 13:30 · JFK 16:30
    ♥ Do have faith in what you're doing.