HTTPS redirection changes for IIS OutOfProcess in 2.2 and 3.0 #392
Labels
2.2.0
3.0.0
Announcements related to ASP.NET Core 3.0
Announcement
Breaking change
Documented
The breaking change has been published to the .NET Core docs
Milestone
Uh oh!
There was an error while loading. Please reload this page.
HTTPS redirection changes for IIS OutOfProcess in 2.2 and 3.0
The new AspNetCoreModule for hosting via IIS OutOfProcess lights up an existing HTTPS redirection feature for both 3.0 and 2.2 applications.
For discussion see dotnet/aspnetcore#15243.
Version introduced
ASP.NET Core 3.0
AspNetCoreModule 13.0.19218.0
Old behavior
The 2.1 project template first introduced support for HTTPS tools like UseHttpsRedirection and UseHsts. Https redirection required configuration to enable since apps in development do not use the default port 443. Hsts is only active if the request is already HTTPS, and skips localhost by default.
New behavior
In 3.0 the IIS HTTPS scenario was enhanced so that the application could discover the server HTTPS ports and make UseHttpsRedirection work by default. InProcess did this via the IServerAddresses feature, which only affects 3.0 applications because the InProcess library is versioned with the framework. OutOfProcess changed to automatically add the ASPNETCORE_HTTPS_PORT environment variable which affected both 2.2 and 3.0 applications because the OutOfProcess component is shared globally. 2.1 apps are not affected because they use a prior version of AspNetCoreModule by default.
The 3.0 version of AspNetCoreModule was recently deployed to Azure Web Sites and some users noticed the that this did affect their 2.2 applications as described above.
Reason for change
Improved 3.0 functionality.
Recommended action
If you want all clients to use HTTPS then no action is required. If you want to allow some clients to use HTTP then take one of the following steps:
A) Remove UseHttpsRedirection and UseHsts from your application's Startup.cs file and redeploy the application.
Or B) Add the environment variable ASPNETCORE_HTTPS_PORT with an empty value to your web.config file. This can be done directly on the server without redeploying the application.
Category
ASP.NET
Affected APIs
UseHttpsRedirection
Issue metadata
The text was updated successfully, but these errors were encountered: