![使新网站在 IIS 上正常运行](https://linux22.com/image/487294/%E4%BD%BF%E6%96%B0%E7%BD%91%E7%AB%99%E5%9C%A8%20IIS%20%E4%B8%8A%E6%AD%A3%E5%B8%B8%E8%BF%90%E8%A1%8C.png)
这可能是一个非常简单的问题,但它给我们带来了麻烦。
我们有一个小型公司内联网,里面有办公室员工和就读我们学校的学生。我们希望让学生访问共享办公室服务器上的一个网站。学生使用一组与主办公室不同的 IP 地址(通过路由器)连接到互联网和网络。
我向 IIS 添加了新网站,添加了 IP 地址,将 IP 地址分配给网站等,一切正常 - 除了它搞乱了解析。这两个网站被称为
服务器(非常原始 - 主办公室服务器的名称)
和
StudentNet(再次非常原始 - 指向新网站的新网站的名称)
我们在设置时遇到了一个问题,有时当办公室 PC 尝试通过浏览器(用于内部网站)或作为 sql 数据库连接字符串的一部分访问服务器时,它找不到它。为了解决这个问题,我们在所有办公室 PC 上的 hosts 文件中添加了一行,这很有效,但我讨厌这个解决方案。它又旧又笨重。当有人进入并连接到网络时,您需要将其添加到他们的主机文件中或让他们使用 ip 地址。当我们购买新机器时,需要这样做。
我无法相信没有更好的解决方案来涉及 Windows Server 或我们作为网络网关的路由器之一。
有什么建议么?
答案1
我假设服务器和 PC 位于 Windows 域中。您可以将主机名添加到您的域服务器的 DNS 设置(管理工具 -> DNS)。在客户端上尝试 nslookup,查看名称是否正确解析。
注意:您不需要为服务器上的网站设置不同的 IP 地址,因为 IIS“理解”http 主机标头的概念。您可以为同一 IP 地址上的网站设置主机标头:
IIS Manager -> Website -> IP Address -> button "Advanced..."
答案2
可以像 splattne 所说的那样,将两个网站添加到 IIS 并使用不同的主机标头。这是最简单的方法。然后只需将“站点名称”作为 cname 记录添加到 DNS 中并将其指向您的 A 名称即可。
IIS 树:
网站
-> 服务器(“server.mydomain.tld” 的主机头)
-> StudentNet(“studentnet.mydomain.tld” 的主机头)
DNS 树 A 主机
主机 '@' 指向 '111.222.333.444'
CNAME
主机 'server' 指向 '@'
主机 'studentnet' 指向 '@'
编辑:不确定我的格式发生了什么。在编辑模式下看起来很不错。
答案3
在 DNS 服务器中手动添加 DNS 记录,例如,新的主机(A)记录服务器指向相应的 IP 地址,StudentNet 也是如此。然后在客户端上执行 ipconfig /flushdns 和 ipconfig /registerdns 以立即获得新的 DNS 数据库。然后尝试一下...
答案4
是的,使用 Windows DNS 服务器,因为它位于你的网络内部