C# 如何在mvc6中启用https

C# 如何在mvc6中启用https,c#,https,asp.net-core-mvc,C#,Https,Asp.net Core Mvc,我是如何做到这一点的: 1-启动时设置过滤器: public IServiceProvider ConfigureServices(IServiceCollection services) { //... services.AddMvc(); services.Configure<MvcOptions>(options => { options.Filters.Add

我是如何做到这一点的:

1-启动时设置过滤器:

     public IServiceProvider ConfigureServices(IServiceCollection services)
       {
        //...
        services.AddMvc();
        services.Configure<MvcOptions>(options =>
        {
            options.Filters.Add(new RequireHttpsAttribute());
        });
3-加载项project.json

 "kestrel": "Microsoft.AspNet.Hosting --server=Microsoft.AspNet.Server.Kestrel --server.urls=https://localhost:1234"
但仍然不起作用。
我做错了什么?

编辑:这是一个新功能,它还不在beta8中。在我尝试在Github上的beta8标记中找到此功能后,我注意到了这一点。现在看来,您唯一的解决方案是在IIS(支持HTTPS)或NGINX之后添加该模块

确保在
Startup.cs/Configure
方法中启用SSL

是这样做的:

var certPath=“c:\\mycert.pfx”;
应用程序UseKestrelHttps(新X509Certificate2(certPath,“certificatePassword”);
动作过滤器将只作用于实际的URL。您确实需要在带有证书的端口上侦听才能使用HTTPs

希望这有帮助


这个问题是针对MVC6的。在这种情况下,您添加的尽可能重复的答案没有帮助。
 "kestrel": "Microsoft.AspNet.Hosting --server=Microsoft.AspNet.Server.Kestrel --server.urls=https://localhost:1234"