我有一个装有 Windows Server 2008 和 IIS 7 的盒子,我正在使用 ASP.NET 应用程序。我正在尝试从一个 IP 运行多个站点,但我无法从外部访问这些站点。我只能从外部访问默认网站,但是当我想访问第二个网站时,它不起作用。
第二个应该在 80 上运行http://ip:81
,默认值在 80 上。它们都在本地运行良好,我在防火墙上添加了一条规则以允许所有入站。
我有一个装有 Windows Server 2008 和 IIS 7 的盒子,我正在使用 ASP.NET 应用程序。我正在尝试从一个 IP 运行多个站点,但我无法从外部访问这些站点。我只能从外部访问默认网站,但是当我想访问第二个网站时,它不起作用。
第二个应该在 80 上运行http://ip:81
,默认值在 80 上。它们都在本地运行良好,我在防火墙上添加了一条规则以允许所有入站。
您可以为所有站点使用相同的端口 80。这都是关于绑定的。您需要将每个站点绑定到不同的主机名:
www.domain.com
site2.domain.com
www.anotherdomain.com
等等
您可以通过在创建站点时指定绑定来做到这一点。然后确保您已将 DNS 记录配置为指向同一 IP。
您还可以为域设置一个包罗万象的 DNS 条目并将其指向服务器的 IP,然后每次创建站点时,您只需选择一个新的子域名即可立即工作。
主机头是你的朋友
此链接可能会对您有所帮助。
http://technet.microsoft.com/en-us/library/cc753195(v=ws.10).aspx
您基本上将在不同的端口上运行您的站点,并告诉 IIS http:// url1 映射到端口 80 上的站点,而 http:// url2 映射到端口 81
TCP端口号,IP地址,主机头这三个用于识别传入的http调用处理,因为前两个现在很常见,所以您只需要使用主机头,这很容易通过命令提示符和用户界面完成IIS。
请在此处阅读此帖子以逐步了解整个过程