ASP.NET Core Kestrel部署HTTPS
ASP.NET Core Kestrel部署HTTPS(阿里云ssl证书)
1.阿里云下载IIS证书(pfx),放到项目根目录下
2、改代码
public class Program { public static void Main(string[] args) { CreateWebHostBuilder(args).Build().Run(); } public static IWebHostBuilder CreateWebHostBuilder(string[] args) => WebHost.CreateDefaultBuilder(args) .UseStartup()
//加入以下代码 .UseKestrel(options =>//设置Kestrel服务器 { options.Listen(IPAddress.Any, 443, listenOptions => { //填入之前iis中生成的pfx文件路径和指定的密码 listenOptions.Protocols = HttpProtocols.Http1; listenOptions.UseHttps("xxxx.pfx", "证书的密码"); }); })
//结束 .ConfigureLogging(logging => { logging.ClearProviders(); logging.SetMinimumLevel(LogLevel.Trace); }).UseNLog(); }
3、http重定向到HTTPS(开80/443端口)
IIS中新建一个80端口的网站,只有一个index.html文件,内容如下:
"zh-CN"> "refresh" content="0; url=https://你的域名">
然后在浏览器输入:你的域名(不含http)回车后,自动转到HTTPS,就完成了