I have a box with Windows Server 2008 and IIS 7, and I'm using an ASP.NET app. I am trying to run multiple sites from one IP, but I can't access the sites from the outside. I can only access the Default website from outside but when I want to access the second one it does not work.
The second one should run on the http://ip:81
and the default one is on 80.
They both run fine locally on the box and I have added a rule on the firewall to allow all inbound.
You can use the same port 80 for all the sites. It's all about the bindings. You need to bind each site to a different host name:
www.domain.com
site2.domain.com
www.anotherdomain.com
etc.
You can do this by specifying the binding when creating a site. Then make sure you have configured DNS records to point at the same IP.
You can also setup a catchall DNS entry for a domain and point it at the IP of the server, then every time you create a site you can simply pick a new subdomain name at it will work straight away.