How to solve the Let’s Encrypt SSL on ASP.NET Core

Problem: Let's Encrypt SSL fails to work even it has been activated on the Control Panel

Solution
This solution applies to ASP.NET Core application with MVC
The problem is that Let's Encrypt SSL targets a folder .well-know inside the application. As it does not exist on the httpdocs, and that no route is targeting it, MVC will return a 404 error message and then SSL Certificate will not work.

So the trick is to add the following code on the configure method from startup.cs

app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @".well-known")),
RequestPath = new PathString("/.well-known"),
ServeUnknownFileTypes = true // serve extensionless file
});

And you also need to add the folder to the root of the website

As Let's Encrypt SSL is a new feature to the Plesk Control Panel, occasionally, it will not work fine. We still highly recommend our customer to use a paid SSL for higher reliability and security reason

If there is any further issue, please open a support ticket via our Help Desk System

Posted by: ASPHostServer Administrator - Mon, Jul 17, 2017 at 7:07 AM. This article has been viewed 843 times.
Online URL: http://faq.asphosthelpdesk.com/article.php?id=314