On an IIS server, with a simple static web page, I constantly got:
HTTP Error 503. The service is unavailable
I did not get any entry in the IIS logs and when stopping the respective app pool, I got the same message.
There was definitely no port conflict as I checked with TCPView if any other process was using port 80.
After a while I tried to change the binding to port 81. And - bingo - , on port 81, the web site worked.
After digging for a while, I found that port 80 had an "ACL reservation". You can find it by typing the following in a CMD box:
netsh http show urlacl
I saw a reservation for port 80:
Reserved URL : http://+:80/
User: NT SERVICE\Machine
Listen: Yes
Delegate: No
SDDL: D:(A;;GX;;;S-1-5-21-2127521184-1604012920-1887927527-67210)
So I had to delete this reservation with command:
netsh http delete urlacl http://+:80/
This made IIS working again on port 80.
It is important to know that the reservation was most probably done by another program (IIS does not need reservations). So it could be that this program now does not work properly anymore.