ASP.NETCore过百度HTTPS 301重定向认证

HTTPS 重定向中间件(UseHttpsRedirection),可以将 HTTP 请求重定向到 HTTPS  

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    else
    {
        app.UseExceptionHandler("/Error");
        // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
        app.UseHsts();
    }

    app.UseHttpsRedirection();
    app.UseStaticFiles();

    app.UseRouting();

    app.UseAuthorization();

    app.UseEndpoints(endpoints =>
    {
        endpoints.MapRazorPages();
    });
}

UseHttpsRedirection中间件支持重定向到307

除非由 ASPNETCORE_HTTPS_PORT 环境变量或IServerAddressesFeature重写才能更改,所以这里使用URL 重写中间件AddRedirectToHttps ​替代这个HTTPS 重定向中间件

 

使用方法如下

 

public void ConfigureServices(IServiceCollection services)
{
    // IWebHostEnvironment (stored in _env) is injected into the Startup class.
    if (!_env.IsDevelopment())
    {
        services.AddHttpsRedirection(options =>
        {
            options.RedirectStatusCode = StatusCodes.Status308PermanentRedirect;
            options.HttpsPort = 443;
        });
    }
}

 

记得一定要引用Nuget包Microsoft.AspNetCore.HttpsPolicy

 

更多更详细请看微软官网强制实施 HTTPS 在 ASP.NET Core

 

 

 

你可能感兴趣的:(ASP.NETCore过百度HTTPS 301重定向认证)