2015-11-12 6 views
8

में https कैसे सक्षम करें:मैं कैसे यह करने के लिए करने की कोशिश की mvc6

 public IServiceProvider ConfigureServices(IServiceCollection services) 
     { 
     //... 
     services.AddMvc(); 
     services.Configure<MvcOptions>(options => 
     { 
      options.Filters.Add(new RequireHttpsAttribute()); 
     }); 

2- सेट [RequireHttps] cotroler में

[RequireHttps] 
public class HomeController : BaseController 
{ 
    public ViewResult Index() 
    { 
     return View(); 
    } 
} 

3: स्टार्टअप में

1- सेट फिल्टर - project.json में जोड़ें

"kestrel": "Microsoft.AspNet.Hosting --server=Microsoft.AspNet.Server.Kestrel --server.urls=https://localhost:1234" 

और अभी भी काम नहीं कर रहा है जी। मैंने क्या गलत किया है?

+0

यह सवाल MVC6 के लिए है। उत्तर दें कि आपने संभावित डुप्लिकेट के रूप में जोड़ा है इस मामले में सहायक नहीं है। – Raskolnikov

उत्तर

5

संपादित करें: यह एक नई सुविधा है जो अभी तक beta8 में नहीं है। मैंने देखा है कि मैंने इस सुविधा को गीथूब पर बीटा 8 टैग में खोजने का प्रयास किया है। ऐसा लगता है कि अब आपके लिए एकमात्र समाधान है, लेकिन आईआईएस (जो एचटीटीपीएस का समर्थन करता है) के पीछे या एनजीआईएनएक्स के पीछे है, जबकि आपके लिए उस मॉड्यूल को जोड़ देगा।

अपने Startup.cs/Configure विधि में SSL सक्षम करना सुनिश्चित करें।

यह बहुत की तरह किया जाता है:

var certPath = "c:\\mycert.pfx"; 
app.UseKestrelHttps(new X509Certificate2(certPath, "certificatePassword")); 

कार्रवाई फिल्टर सिर्फ वास्तविक URL पर कार्य करेगा। HTTP पर होने के लिए आपको एक प्रमाणपत्र के साथ एक बंदरगाह पर सुनने की आवश्यकता है।

उम्मीद है कि इससे मदद मिलती है।

Source to sample Startup.cs

संबंधित मुद्दे