问题描述: 在ASP.NET Core中,使用Cookie身份验证时,发现在IIS的子站点上无法正常工作。
解决方法:
public void ConfigureServices(IServiceCollection services)
{
// 其他配置代码
services.ConfigureApplicationCookie(options =>
{
options.Cookie.Name = "YourCookieName"; // 替换为您的Cookie名称
options.Cookie.Domain = "YourDomain"; // 替换为您的域名
options.Cookie.Path = "YourPath"; // 替换为您的路径
options.Cookie.HttpOnly = true;
options.ExpireTimeSpan = TimeSpan.FromMinutes(30); // 设置Cookie过期时间
options.SlidingExpiration = true;
});
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
// 其他配置代码
app.UseAuthentication();
// 其他配置代码
}
通过以上步骤,您应该能够在IIS的子站点上使用ASP.NET Core中的Cookie身份验证。请根据您的实际情况修改代码中的参数和配置。