我试图在IIS服务器中托管多个网站。我可以用不同的端口托管它。但我不想为不同的网站使用不同的端口,我也尝试使用主机头,但我只能在本地访问这些头。我想公开/从外部访问这些标题。我怎么能这么做?我还配置了DNS.But,我无法公开访问它。是否有可能将www.test.com提供给一个站点,并将www.test.com/ site 2提供给另一个站点?
发布于 2019-12-27 03:26:21
IIS服务器可以承载多个网站,但要想让IIS正确地分发HTTP请求,每个网站都必须具有一些独特的价值。对于IIS网站,它由三个属性组成,这些属性构成每个网站的唯一组合。
它们是:
如果要在同一个端口和IP地址上承载多个网站,则必须使用唯一的主机头。
主机标头是由客户端发送到服务器的HTTP请求的一部分,该请求指定其寻址到哪个网站。因此,必须在web服务器端指定此主机头,并且DNS包含与web服务器的主机名和ip地址匹配的正确条目。
您不能像www.test.com/site2 2那样设置主机头。如果要使用这种格式,可以将site2作为子应用程序托管在www.test.com主机头包含的站点下。
若要创建唯一的绑定,请为第二个网站指定另一个名称(主机名)。右键单击TestSite并选择“编辑绑定”。选择所需的绑定,然后单击“编辑”。在hostname字段中指定用户要寻址的惟一主机名(如TestSite )。

现在,您需要为服务器(A或CNAME)添加一个别名,用于指定IP地址或web服务器的名称。
您可以在DNS控制台( TestSite )中为名称dnsmgmt.msc创建CNAME条目,并将您的IIS服务器的域名指定为FQDN目标主机。

使用PowerShell:
Add-DnsServerResourceRecordCName -HostNameAlias web-srv1.contoso.loc -Name testsite -ZoneName contoso.loc如果要访问本地IIS服务器,则站点名到服务器IP地址的映射是通过文件C:\Windows\system32 32\驱动器\etc\host完成的。
当你想公开访问网站时,你需要购买域名和公共IP地址。如果您不从公共域名提供商购买域名,那么您的域名将无法由internet客户端解析。
https://stackoverflow.com/questions/59485621
复制相似问题