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
Article ID: 314
Created On: Mon, Jul 17, 2017 at 7:07 AM
Last Updated On: Mon, Jul 17, 2017 at 7:07 AM
Authored by: ASPHostServer Administrator [asphostserver@gmail.com]
Online URL: http://faq.asphosthelpdesk.com/article.php?id=314