ps/Modules/Alkami.PowerShell.IIS/Public/Test-WebBinding.ps1
2023-05-30 22:51:22 -07:00

43 lines
1017 B
PowerShell

function Test-WebBinding {
<#
.SYNOPSIS
Test if the given web binding exists on the site
#>
[CmdletBinding()]
[OutputType([System.Boolean])]
Param(
[Parameter(Mandatory = $true)]
[string]$website,
[Parameter(Mandatory = $true)]
[string]$url,
[Parameter(Mandatory = $false)]
[switch]$ssl
)
$logLead = (Get-LogLeadName)
$mgr = New-Object Microsoft.Web.Administration.ServerManager
[string]$hostHeader = [string]::Empty
if ($ssl) {
$hostHeader = ("*:443:{0}" -f $url)
}
else {
$hostHeader = ("*:80:{0}" -f $url)
}
if ($null -eq $mgr.Sites[$website]) {
Write-Host ("$logLead : Website {0} does not exist" -f $website)
return $false
}
else {
foreach ($webBinding in $mgr.Sites[$website].Bindings.bindingInformation) {
if ($webBinding -eq $hostHeader) {
return $true
}
}
return $false # binding not found
}
}