Domain name and HTTPS
Introduction
The following documentation provides a baseline for configuring IIS to handle domain binding and SSL termination.
SSL termination can be implemented via other solution than IIS, but requires the setup of a reverse proxy (such as NGINX) which requires some configuration :
Set up the SSL termination proxy (Nginx termination example)
Set up the proxying itself (Nginx proxying example)
Your SSL termination proxy should also automatically redirect non-secure connections to the secure port
Prerequisites
In your DNS, create or configure a unique subdomain record for the proPilot application, for example :
propilot.example.com. 3600 IN A 0.0.0.0
IIS configuration
Generate or register a certificate for the corresponding domain : https://techcommunity.microsoft.com/t5/iis-support-blog/installing-server-certificates-manually-in-iis/ba-p/394271
Edit the Bindings of configuration of the “Propilot“ website
Set the Host name for the HTTP binding
Create a new configuration binding to handle HTTPS
proPilot configuration
Edit the Web.config (C:\Program Files\Deployments Factory\ProPilot\Web.config) file with a text editor
Search the
rewrite
element and add a rule to automatically redirect HTTP to HTTPSXML<rewrite> <rules> <rule name="HTTPS Redirect" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTPS}" pattern="^OFF$" /> </conditions> <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="false" /> </rule> <rule name="Angular Routes" stopProcessing="true"> <!-- do not change this block --> </rule> </rules> </rewrite>
Search the
httpCookies
element insystem.web
and edit the domain valueXML<httpCookies domain="propilot.example.com" httpOnlyCookies="true" requireSSL="true" />