Рейтинг:0

Скрипт для создания сайта IIS не работает

флаг kr

Я пытаюсь использовать новый IISАдминистрирование модуль для создания сайта IIS (я знаю, что могу использовать старый Веб-администрирование модуль, но теперь это рекомендуемый подход).

Когда я запускаю следующий скрипт, я получаю следующую за ним ошибку:

Import-Module IISAdministration

New-IISSite -Name "IdpSAMLBridge" -BindingInformation "*:7777:demo.something.com" -PhysicalPath "C:\inetpub\IdpSAMLBridge\abc5" -Protocol https -CertificateThumbPrint "284c9018f6f6258a05c48ab9e34f6fe2133cff1b" -Cert:StoreLocation "

И ошибка:

New-IISSite: не удается найти параметр, соответствующий имени параметра «Протокол».

 ... indingInformation '*:12031:ictctst.incontrol.local' -Протокол https - ...
                                                         ~~~~~~~~~
   + CategoryInfo: InvalidArgument: (:) [New-IISSite], ParameterBindingException
   + FullyQualifiedErrorId: NamedParameterNotFound,Microsoft.IIS.Powershell.Commands.NewIISSiteCommand         
    

Мой код кажется правильным, если этот документ все еще правильный и актуальный.

Если я поменяю местами параметры, я получу аналогичную ошибку, но с другим параметром:

New-IISSite: не удается найти параметр, соответствующий имени параметра «CertificateThumbPrint».
В C:\Users\David\Documents\scripts\create-idp.ps1:3 char:132
+ ... tion '*:12031:ictctst.incontrol.local' -CertificateThumbPrint 'f62d70 ...
+ ~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo: InvalidArgument: (:) [New-IISSite], ParameterBindingException
    + FullyQualifiedErrorId: NamedParameterNotFound,Microsoft.IIS.Powershell.Commands.NewIISSiteCommand

Однако, если я удалю некоторые параметры, команда сработает:

Import-Module IISAdministration

New-IISSite -Name "IdpSAMLBridge" -PhysicalPath 'C:\inetpub\IdpSAMLBridge\abc5' -BindingInformation '*:12033:demo.something.com' 

Любые идеи, в чем может быть проблема?

Спасибо

флаг in
Существует ли каталог C:\inetpub\IdpSAMLBridge\abc5? Можете показать, что там?
флаг kr
Каталог действительно существует. У него есть развернутое приложение ASP.NET. На этом сервере есть несколько таких сайтов. Я создал их в IIS вручную.
флаг cn
Попробуйте использовать New-WebSite, у меня никогда не было проблем с этим. Почти никогда не используйте *-IIS*.
флаг kr
@PeterHahndorf Но это вся моя цель. Сделать это можно с помощью нового модуля. Я знаю, что модуль WebAdministration работает. Но я хочу узнать, как это сделать с помощью `IISAdministration`. И я не могу, убей меня, понять, почему это не работает.
флаг in
О, эй, вы полностью поменяли местами, какое сообщение об ошибке вы получаете.
флаг kr
@Грилс, да. Это на мне. Я отредактировал вопрос с более подробной информацией. Это была ошибка, которую я получал на сервере. Я думал, что на моем ноутбуке то же самое, пока не присмотрелся повнимательнее.
Рейтинг:3
флаг tz

Вероятно, вы пытаетесь использовать встроенную в ОС версию модуля 1.0.0.0, которая не так многофункциональна, как текущая версия 1.1.0.0, доступная через Галерея PowerShell а также входит в состав Windows Server 2022.

Вы можете проверить свою версию с помощью следующей команды:

Get-Module -List IISAdministration

Вы также можете проверить доступные параметры следующим образом:

Get-Help New-IISSite

Вот сообщение в блоге от команды IIS, объявляющее о новой версии модуля еще в 2017 году. https://blogs.iis.net/iisteam/introduction-iisadministration-in-the-powershell-gallery

флаг in
Да, это барсук: «Мы также обновили командлет New-IISSite, чтобы вы могли указать привязку HTTPS при создании сайта».
флаг kr
@Райан Болджер Круто! пока я читал документы, я не знал об этом сообщении в блоге. Спасибо, что поделились своими знаниями. Мой гугл-фу даже не подхватил.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.