要将ASP.NET Core应用程序从HTTP重定向到HTTPS,可以使用中间件来实现。以下是一个解决方案示例:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
// 其他配置代码...
app.UseHttpsRedirection(); // 添加此行
// 其他配置代码...
}
{
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "http://localhost:5000"
},
"Https": {
"Url": "https://localhost:5001",
"Certificate": {
"Path": "certificate.pfx",
"Password": "password"
}
}
}
}
}
这里需要将"certificate.pfx"替换为你的SSL证书的路径和密码。
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseKestrel(options =>
{
options.Listen(IPAddress.Loopback, 5000); // HTTP监听端口
options.Listen(IPAddress.Loopback, 5001, listenOptions =>
{
listenOptions.UseHttps("certificate.pfx", "password"); // HTTPS监听端口和SSL证书配置
});
})
.UseStartup();
同样,这里也需要将"certificate.pfx"替换为你的SSL证书的路径和密码。
通过以上步骤,ASP.NET Core应用程序将会自动将HTTP请求重定向到HTTPS。