首页 > 解决方案 > 如何从使用 Powershell 的 WebBinding 获取网站名称?

问题描述

因此,我正在编写一个 Powershell 脚本来验证所有网站的所有 HTTPS 绑定实际上是否具有相应的 SSL 绑定。我知道这听起来毫无意义,因为 IIS 管理界面在尝试保存此类绑定时已经验证了这一点,但相信我,当您在共享 IIS 配置中混合使用绑定时,情况并非总是如此,其中一些绑定使用来自 CCS 的证书,有些使用本地安装的证书。

我已经编写了一个脚本,它可以为我提供一个网站绑定列表,这些绑定没有相应的 SSL 绑定。此列表是使用Get-WebBindingscriptlet 编译的。

我可能忽略了一些非常简单的事情,但是有人知道如何从 WebBinding 中确定网站名称吗?

标签: powershelliis-8

解决方案


没关系,我毕竟找到了一种方法:

function GetWebsiteName() {
  param (
    [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] $binding
  )

  $binding.ItemXPath -replace '(?:.*?)name=''([^'']*)(?:.*)', '$1'
}

推荐阅读