[玩转系统] 在同一端口或 IP 地址上运行多个 IIS 网站
作者:精品下载站 日期:2024-12-15 00:44:28 浏览:15 分类:玩电脑
在同一端口或 IP 地址上运行多个 IIS 网站
当您在 Windows 上安装 Internet 信息服务 (IIS) 时,默认情况下会创建一个空的“默认网站”并侦听标准 Web HTTP 端口 - TCP 80。在 IIS 术语中,这意味着该站点绑定到端口 TCP/80。要打开此站点,只需输入 IIS 服务器的名称(
“http://web-srv1”
)或其IP地址(
“http://192.168.1.100”
)在您的浏览器中。单个 IIS Web 服务器可以为数十个和数百个网站提供服务,并且您可以在其上运行多个网站,在同一 TCP 端口(80、443 或其他端口)上侦听和响应。然而,IIS 管理器的界面并没有表明您可以托管另一个网站而不将其绑定到其他端口(例如 8080)。在本文中,我们将展示如何在同一 IIS 服务器上托管多个网站并将它们绑定到相同的端口和 IP 地址或不同的 IP 地址。
IIS 网站绑定
在 Windows Server 上运行的单个 Web IIS 服务器可以托管多个网站。但是,为了 IIS 正确分发 HTTP 请求,每个网站都必须用一些唯一的值进行标识。对于 IIS 网站,它由三个属性组成,这三个属性构成每个网站的唯一组合。这些都是:
-
TCP 端口号
一个IP地址
主机头(主机名)
有关托管网站的信息按以下格式存储在 IIS 元数据库的 ServerBindings 属性中:
IP:Port:Hostname
。因此,如果您想在同一端口和 IP 地址上托管多个网站,则必须使用唯一的主机标头。它是什么?主机标头是客户端向服务器发送的 HTTP 请求的一部分,指定其要发送到哪个网站。因此,必须在 Web 服务器端指定此主机标头,并且 DNS 包含与 IIS Web 服务器的主机名和 IP 地址相匹配的正确记录。
假设您有一个在 IIS 上运行并侦听 80 端口的网站。并且您需要将第二个网站绑定到同一端口。
在 IIS 管理器中,创建另一个名为 TestSite 的网站(添加网站),该文件将位于 c:\inetpub\TestSite 中(尚未指定主机名)。
单击“确定”后,会出现一条警告,提示您不能对两个站点使用绑定 *:80。
Add Website
The binding '*:80:' is assigned to another site. If you assign the same binding to this site, you will only be able to start one of the sites. Are you sure that you want to add this duplicate binding?
同意此警告。因此,您已经将另一个站点绑定到端口 80,如果不停止第一个站点,则无法启动它。
使用主机标头在 IIS 上托管多个网站
要创建唯一的绑定,请为第二个 IIS 网站指定另一个名称(主机名)。右键单击TestSite并选择编辑绑定。选择您需要的绑定,然后单击编辑。
在主机名称字段中指定用户将寻址到的唯一主机名,例如 TestSite。
您可以使用命令提示符配置 IIS 站点绑定。在这种情况下,对于 IIS 7 或更高版本,配置绑定的命令如下所示:
C:\Windows\System32\inetsrv\appcmd.exe set site /site.name:testsite /+bindings.[protocol='http',bindingInformation='*:80:testsite']
现在您也可以启动第二个网站。
您所要做的就是为服务器添加 DNS 别名(A 或 CNAME),以指向 IIS Web 服务器的 IP 地址或主机名。如果您使用的是 Active Directory 域,则需要在域控制器上创建 DNS 记录。
您可以在 DNS 控制台中为名称 testsite 创建 CNAME 记录 (
dnsmgmt.msc
)并将 IIS 服务器的域名指定为 FQDN 目标主机。
此 DNS 记录也可以使用 PowerShell 创建:
Add-DnsServerResourceRecordCName -HostNameAlias web-srv1.a-d.site -Name testsite -ZoneName a-d.site
尝试打开
http://TestSite
在您的浏览器中。它应该成功打开。
这里有一些值得一提的有用注释。
如果您使用独立的 IIS 服务器,则站点名称到服务器 IP 地址的映射是通过文件完成的
C:\Windows\system32\drivers\etc\hosts
绑定设置存储在 IIS 配置文件的 IIS 配置文件 部分中
C:\Windows\System32\inetsrv\config\applicationHost.config
。
在我们的例子中,此部分包含以下数据:
<sites>
<site name="Default Web Site" id="1">
<application path="/">
<virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:80:" />
</bindings>
</site>
<site name="TestSite" id="2" serverAutoStart="true">
<application path="/" applicationPool="TestSite">
<virtualDirectory path="/" physicalPath="C:\inetpub\TestSite" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:80:TestSite" />
</bindings>
</site>
<siteDefaults>
<logFile logFormat="W3C" directory="%SystemDrive%\inetpub\logs\LogFiles" />
<traceFailedRequestsLogging directory="%SystemDrive%\inetpub\logs\FailedReqLogFiles" />
</siteDefaults>
<applicationDefaults applicationPool="DefaultAppPool" />
<virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>
同样,您可以在 IIS Web 服务器的同一端口上托管和运行数百个站点。
在 IIS 上运行具有不同 IP 地址的多个站点
现在让我们尝试在 IIS Web 服务器上以不同的 IP 地址运行两个站点。首先,您需要在 Windows Server 上添加单独的 VLAN 接口,或者简单地为您的 NIC 分配一个额外的 IP 地址(别名)。
在此示例中,服务器的主 IP 地址为 192.168.13.100,我将向同一网络适配器添加一个额外的 IP 别名 192.168.13.101:
Get-NetIPAddress | ft IPAddress, InterfaceAlias, SkipAsSource
New-NetIPAddress -IPAddress 192.168.13.101 -PrefixLength 24 -InterfaceAlias “Ethernet” -SkipAsSource $True
现在您需要在 DNS 服务器上为新站点创建一条 A 记录(我们将使用 -CreatePtr 选项在反向区域中另外创建一条 PTR 记录):
Add-DnsServerResourceRecordA -Name NewSite3 -IPv4Address 192.168.13.101 -ZoneName a-d.site -TimeToLive 01:00:00 -CreatePtr
仍然需要打开站点绑定设置并将站点绑定到主机的附加 IP 地址。
使用 PowerShell 管理 IIS 站点绑定
您可以使用 PowerShell 管理 IIS 服务器上的站点绑定。为此,使用 WebAdministration 模块:
Import-Module WebAdministration
显示有关所有可用 IIS 站点及其绑定的信息:
Get-IISSite
或者关于单个站点:
(Get-Website -Name NewSite).bindings.Collection
protocol bindingInformation sslFlags
-------- ------------------ --------
http 192.168.13.101:80:NewSite3 0
要更改此站点的绑定(您可以更改IP地址、端口或名称):
Set-WebBinding -Name NewSite1 -BindingInformation "192.168.13.101:80:NewSite1" -PropertyName 'Port' -Value '8080'
Set-WebBinding -Name NewSite1 -BindingInformation "192.168.13.101:8080:NewSite1" -PropertyName 'IPAddress' -Value '192.168.13.100'
要将新绑定添加到特定 IIS 站点,请运行:
New-IISSiteBinding -Name NewSite1 -BindingInformation "*:9090:" -Protocol http
要删除绑定:
Remove-IISSiteBinding -Name NewSite1 -BindingInformation "*:9090:"
因此,您可以在 IIS Web 服务器上在不同的 IP 地址以及相同的 IP 地址和 TCP 端口号上运行多个站点。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[短剧合集] 2025年06月2日 精选+付费短剧推荐39部
[软件合集] 25年6月2日 精选软件18个
[软件合集] 25年6月1日 精选软件15个
[短剧合集] 2025年06月1日 精选+付费短剧推荐59部
[短剧] 2025年05月31日 精选+付费短剧推荐58部
[软件合集] 25年5月31日 精选软件66个
[电影] 黄沙漫天(2025) 4K.EDRMAX.杜比全景声 / 4K杜比视界/杜比全景声
[风口福利] 短视频红利新风口!炬焰创作者平台重磅激励来袭
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[美图] 2W美女个美女小姐姐,饱眼福
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag