在.NET Core应用程序的Startup.cs文件上,默认情况下,它使用
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
Run Code Online (Sandbox Code Playgroud)
但是在某些情况下,我可以找到
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler();
}
Run Code Online (Sandbox Code Playgroud)
有什么不同?
Ram*_*hat 24
这是一个古老的问题,但如果您仍然没有找到答案,那么这可能会有所帮助。
UseHsts 在响应中添加了一个 Strict-Transport-Security 标头。当使用 HTTPS 访问该站点时,浏览器会将其记录下来,并且将来使用 HTTP 的请求将被重定向到 HTTPS。因此,必须至少使用 HTTPS 访问该站点一次才能完成这项工作。
此外,Strict-Transport-Security 标头设置的到期时间已过,下次尝试通过 HTTP 加载站点将不会自动重定向到 HTTPS。
Hsts
是强制使用SSL的安全功能。它与异常无关。