I have a medium EC2 instance that runs Windows 2008 R2. I have installed the web role in order to run IIS on it. I am able to see the default website locally but not from the internet using the Public DNS. I get the message "Cannot connect to Website"
The first thing you need to do is assign an elastic IP address to your instance.
Next, you need to make sure that the security group assigned to this instance has whatever port is added for inbound connections for whatever port you have created the website on(80, 443, etc.).
You also want to make sure that this port is open on your Windows firewall.
Because this is still relevant and confusing as ever, here is what I had to figure out. Using the accepted answer, also make sure you assign your security groups to your instance. You do this by using the Actions menu for the selected Instance.
If you forgot to open Widows firewall and port 80 for HTTP during installation, you can always to it EC2 management console under
NETWORK & SECURITY > Security Groups > Edit inbound rules Add rule for HTTP (automatically assigns to port 80 and use 0.0.0.0/0