话不多说,直接上代码
修改Program中BuildWebHost以增加SSL支持
public class Program { public static void Main(string[] args) { CreateWebHostBuilder(args).Build().Run(); } public static IWebHostBuilder CreateWebHostBuilder(string[] args) { return WebHost.CreateDefaultBuilder(args) .UseKestrel(options=> { //监听任何ip地址 options.ListenAnyIP(8510,listenOptions => { listenOptions.UseHttps("rf_dev.pfx", "123456"); //此处是你的ssl生成的pfx文件及文件密码 }); }) .UseUrls(config["server.urls"].Split(';')) .UseConfiguration(config) .UseContentRoot(Directory.GetCurrentDirectory()) .UseIISIntegration() .UseStartup<Startup>(); } }
在Startup类Configure方法中添加
app.UseHttpsRedirection();
不需要更改其他,可以直接生效。注意,ListenAnyIp有多个同类方法,如果设置Listen (IPAddress.Loopback,5001),后端只能访问https://127.0.0.1 :5001
options.ListenAnyIP(8510,listenOptions => { listenOptions.UseHttps("rf_dev.pfx", "123456");}); })
可行