Goal: Cập nhật một tiêu đề máy chủ hiện tại cho một trang web IIS7.5 với PowerShellCập nhật chủ Header trong IIS với Powershell
Vấn đề: Set-WebBinding
đòi hỏi tên của trang web mà tôi không có. Tôi có HostHeader mặc dù.
Kịch bản: Tôi có nhiều trang web trong IIS. Một số người trong số họ có một tiêu đề máy chủ với một chuỗi cụ thể mà tôi muốn thay đổi.
Site1 - site1.stuff.domain.net
Site2 - site2.stuff.domain.net
Site3 - site3.domain.net
Tôi muốn thay đổi tất cả các trang web có tiêu đề .stuff
trong tiêu đề của chúng.
Tôi đang sử dụng Get-WebBinding
để nhận danh sách tất cả các trang web và các ràng buộc của chúng. Sau đó tôi lặp qua chúng và kiểm tra xem bindingInformation
có chứa .stuff
hay không. Tôi sửa đổi các chuỗi làm thế nào tôi hài lòng và sau đó đi để cập nhật các tiêu đề với
Set-WebBinding -HostHeader $originalHeader -SetProperty HostHeader -Value $newHeader
Rõ ràng tuy nhiên, bạn phải có tên của trang web để sử dụng Set-WebBinding
, không giống như Get-WebBinding
cho phép bạn để có được một ràng buộc dựa trên HostHeader (Get-WebBinding -HostHeader $someValue
). Có cách nào để sử dụng Set-WebBinding
mà không cần chỉ định Name
của trang web không? Có cách nào để tôi có thể lấy tên của trang web từ Get-WebBinding
không? Có cách thay thế cho Set-WebBinding
không? Hay là có cách nào tốt hơn để làm những gì tôi đang cố gắng làm?
Tốt, rất đẹp. – Kev
Thật không may điều này không hoạt động khi có nhiều ràng buộc trên mỗi trang web. Trong trường hợp này $ _ Giá trị thuộc tính ItemXPath là như nhau, vì vậy chỉ có hiệu lực ràng buộc cuối cùng tồn tại. – esteewhy