도메인 아래에 여러 개의 사이트가있는 도메인이 있습니다. 에서Startup.cs에서 현재 도메인 이름을 얻는 방법
내 Startup.cs
그래서 나는 쿠키로 기본 도메인을 사용하지 않는 모든 내 사이트 IIS
에서 같은 사이트 아래에 하위 폴더에있는 생산 시스템에서 다음 코드
public void ConfigureServices(IServiceCollection services)
{
services.AddIdentity<ApplicationUser, ApplicationRole>(options =>
{
options.Cookies.ApplicationCookie.CookieName = "MyAppName";
options.Cookies.ApplicationCookie.ExpireTimeSpanTimeSpan.FromMinutes(300);
})
.AddEntityFrameworkStores<MyDbContext, Guid>()
.AddDefaultTokenProviders();
에게 있습니다 이름이 다른 경우 다른 사이트 쿠키는 동일한 이름을 갖습니다.
내가 원하는 것은 현재 도메인 e..g mydomain.com을 얻은 다음 내가 지정한 사이트 당 명시적인 cookiename에 추가하는 것입니다. Startup.cs
예
var domain = "get the server domain here somehow e.g. domain.com";
...
options.Cookies.ApplicationCookie.CookieName = "MyAppName." + domain;
어떻게하면됩니까?
이유는 물어 :
내가 쿠키 내가 접근하고있는 사이트의 별도의 도메인 이름에 해당 크롬 개발자 도구를 볼 수 있습니다. 그러나 때로는 어떻게 든 두 개의 다른 서버에 동일한 사이트에 로그인 할 때 상황에 대한 정보를 얻을 수 있습니다. 로그인 할 수 없으며 오류가 기록되지 않습니다. 유일한 해결책은 다른 브라우저를 사용하는 것입니다. 따라서 증상만으로 쿠키와 관련 있다고 가정 할 수 있습니다.
제 질문은 제 환경과 마찬가지로 쿠키가 특정 도메인에만 속할 수 있지만 쿠키 이름에 도메인 이름을 추가하는 것이 좋습니다.
참조 쿠키는 이미 분리되어 있습니다. 실제 문제가 발생하지 않습니다. –
예 Chrome dev 도구를 보면 쿠키가 각 도메인 아래에 있습니다. 특별한 이유가 아니라 단지 쿠키 이름에 내 개인적인 취향에 맞는 도메인 이름이 포함되어 있다고 가정합시다. – devc2