不正确的Cookie域AspNetCore 3.0 Linux

问题描述 投票:2回答:1

我最近尝试将ASP.NET core 3.0应用程序从Windows服务器迁移到Linux服务器。该应用程序与另一个网站共享cookie身份验证,因此cookie域必须是通配符,才能在子域之间共享,即.example.com

[这在Windows服务器上工作正常,https://sub.example.com的cookie域被设置为.example.com

但是,当我在Linux服务器上登录时,由于某些原因,cookie域被设置为子域。例如,对于https://sub-test.example.com,Cookie域是.sub-test.example.com,那么该域名将不会与https://sub.example.com共享,因此出现了问题。

[我已经在浏览器中检查了网络选项卡,并且set-cookie标题具有“ domain = .sub-test.example.com”,所以我确信这是服务器端的问题。

在Startup.cs中,我对所需的域通配符进行了硬编码,只是在Linux上没有得到认可。

services.ConfigureApplicationCookie(opt =>
{
    opt.Cookie.Domain = ".example.com";
}

不确定我还能尝试什么。

asp.net-core cookies cross-domain asp.net-core-3.0
1个回答
0
投票

听起来像是反向代理的问题,它可能会覆盖您在那里设置的设置。看看这篇文章:URL Rewrite keeps original host Location when reverse proxy 301 redirects

© www.soinside.com 2019 - 2024. All rights reserved.