我正在尝试使用powershell为所安装的任何网站提取主机。一旦我知道了这一点,我想专门针对使用端口80和端口443的网站寻找hostHeaders。
到目前为止,我能够使用
get-webbinding cmdlet
从网站上提取一些信息,但我不确定如何使用它来查询网站上的HostHeader信息。在get-webbinding命令的输出中,我将主机头视为bindingInformation列的一部分,但我不确定如何获取主机头信息。
但是当我通过
查询网站时 get-webbinding -HostHeader (hostHeaderName)
我收到信息,所以我相信有一种方法可以使用get-webbinding来查询hostHeader信息。
如果有其他方法可以获取此信息,请告诉我们。我也没有运气试图使用
get-website
答案 0 :(得分:7)
您必须在bindingInformation
上拆分:
并获取最后一部分:
Get-WebBinding | select -expand bindingInformation | %{$_.split(':')[-1]}
答案 1 :(得分:3)
这将为您提供一个具有两个属性的对象:Port和HostHeader(每个绑定信息):
Get-WebBinding | Where-Object {$_.bindingInformation -match '80|443'} | ForEach-Object{
$port,$hh = $_.bindingInformation.split(':')[1..2]
New-Object PSObject -Property @{
Port=$port
HostHeader=$hh
}
}