I have a web site running in IIS 10. When I access the site over HTTP, everything works fine. When I run the site over HTTPS, I immediately get an HTTP 503 error "Service Unavailable". The SSL certificate used on the site is an domain certificate.
The problem in this case is that everything on port 443 has been reserved and "prevents W3SVC from obtaining the rights to listen on port 80 when it tries to start the site. Furthermore, applications that run in IIS do not need explicit reservations to run, only non-IIS applications have to reserve a URL namespace if they want to use HTTP to listen for requests."
Here are the steps to determine if this is the problem and how to resolve:
- Open the Command Prompt
- Run:
netsh http show urlacl url=https://+:443/
- If something is there, then this is your problem. Port 443 is completely reserved and is blocking IIS.
- If there is a need to reserve port 443 for an application running outside of IIS, it needs to be registered with an application path (i.e. http://+:443/appPath)
- If there is nothing there, then this might not be the issue. No need to continue.
- Run:
netsh http delete urlacl https://+:443/
- Try running the application again.
Source: stackoverflow.com