I have an Azure Application Gateway and trying to set up a Path-based routing with SSL.
Backend pool target servers are App Services, which are allowed to accept both HTTP and HTTPS traffic.
Configuration in details
Backend pools
- Pool1 -> Contains one App Service
- Pool2 -> Contains one App Service
Backend settings
- Backend protocol -> HTTPS
- Used the well known CA certificate option
- Host name override -> Pick host name from backend target (for App Services to be accessible)
Frontend IP configuration
Routing Rule
- Listener - HTTP_Listener
- Backend targets
- Path based rules
- Path: "/path1/*" -> Pool1
- Path: "/path2/*" -> Pool2
Then I have the HTTP listener, it works fine and I can access the domain: subdomain.domain.com
Routes are also working fine:
And after this stage I cannot configure to access the domain by HTTPS.
HTTPS Listener configuration
- Protocol: HTTPS
- Certificate: Self-signed certificate
- Listener type: Multi site -> Host names: "*.domain.com"
The error
When I swith the listener in routing rule from HTTP to HTTPS, I receive an error in web-browser:
'subdomain.domain.com' didn’t send any data.
ERR_EMPTY_RESPONSE
P.S. Creating the self-signed certificate in PowerShell
New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname subdomain.domain.name
$pwd = ConvertTo-SecureString -String "12345" -Force -AsPlainText
Export-PfxCertificate -cert cert:\localMachine\my\0000000000 -FilePath c:\cert.pfx -Password $pwd