Tạo trang web trong IIS từ powershell với nhiều ràng buộc


8

Tôi đang cố gắng tạo tập lệnh đơn giản để trang web của tôi có thể được truy cập cả www.example.comđơn giản và đơn giản example.com. Làm thế nào để tôi vượt qua nó như là một đối số ràng buộc?

Đây là những gì tôi cố gắng:

$iisApp = New-Item $iisAppName -bindings @{protocol="http";bindingInformation="*:80:"+ $url + ",*:80:www." + $url} -physicalPath $directoryPath
$iisApp | Set-ItemProperty -Name "applicationPool" -Value $iisAppPoolName

Câu trả lời:


7

Các tùy chọn ràng buộc Thông tin đang mong đợi một Mảng các mục (chính là mỗi mảng, lưu ý @), không phải là danh sách được phân tách bằng dấu phẩy.

Ví dụ - Xác định một mảng thích hợp của các mục nhập trước, sau đó gán nó làm đối số ràng buộc:

$bindings = @(
   @{protocol="http";bindingInformation="*:80:" + $url},
   @{protocol="http";bindingInformation="*:80:www." + $url},
)

$iisApp = New-Item $iisAppName -bindings $bindings -physicalPath $directoryPath
$iisApp | Set-ItemProperty -Name "applicationPool" -Value $iisAppPoolName

Ngoài ra, sau khi tạo trang web, bạn có thể thêm các liên kết bổ sung bằng cách sử dụng lệnh New-WebBinding . ví dụ:

New-WebBinding -Name $iisAppName -IPAddress "*" -Port 80 -HostHeader "www.$url"

0

Tôi đang sử dụng điều này để cập nhật các ràng buộc, nó có thể giúp đỡ ai đó vì tôi phải tự mình tìm ra điều này.

$hostname =$env:COMPUTERNAME
$fqdn = $env:USERDNSDOMAIN
$Bindings = Get-WebBinding |Select -expandproperty bindinginformation
$websites = Get-Website
foreach ($website in $websites)
    {
    $siteName=$website.name
         foreach ($Binding in $Bindings)
                {
                $oldheader =($Binding -split ":")[-1]
                    if ($oldheader -eq "")
                        {
                         Set-WebBinding -Name $sitename -BindingInformation $Binding -PropertyName "HostHeader" -Value "$hostname.$fqdn" 
                        }
                }
     }

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.