Поделиться через


Программа регистрации IIS для ASP.NET (Aspnet_regiis.exe)

Обновлен: Ноябрь 2007

При параллельном выполнении нескольких версий .NET Framework на одном компьютере версия фильтра ISAPI ASP.NET, соответствующая приложению ASP.NET, определяет версию среды CLR, используемую приложением. Программа регистрации IIS для ASP.NET (Aspnet_regiis.exe) позволяет администратору или программе установки просто и легко обновить сопоставления сценариев для приложения ASP.NET, чтобы указать версию фильтра ISAPI ASP.NET, связанную со средством. Это средство также может использоваться для отображения состояния всех установленных версий ASP. NET, регистрации версии ASP.NET, связанной со средством, создания каталогов клиентских сценариев и выполнения других действий с конфигурацией.

k6h9cz8h.alert_note(ru-ru,VS.90).gifПримечание.

Существует два средства регистрации IIS, поставляемых с .NET Framework; одно для стандартных, а другое для 64-разрядных систем. Средство для 64-разрядных систем находится в каталоге Framework64 каталога Microsoft.NET папки Windows; например средство регистрации IIS может находиться в папке C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727.

aspnet_regiis [options]

Параметры

Параметр

Описание

-c

Устанавливает клиентские сценарии для ASP.NET, например клиентский сценарий проверки, в подкаталог aspnet_client каждого каталога узла IIS.

Устанавливаются только клиентские сценарии для версии ASP.NET, связанной с программой Aspnet_regiis.exe.

-disable

Отключает ASP.NET в консоли безопасности IIS.

Этот параметр можно сочетать только с параметрами -i, -ir или -r. Он недоступен с версиями IIS, предшествующими IIS 6.0.

-e

Удаляет клиентские сценарии для ASP.NET из подкаталогов aspnet_client всех каталогов узла IIS.

Удаляются только клиентские сценарии для версии ASP.NET, связанной с программой Aspnet_regiis.exe.

-ea

Удаляет клиентские сценарии для всех версий ASP.NET из подкаталогов aspnet_client всех каталогов узла IIS.

-enable

Включает ASP.NET в консоли безопасности IIS.

Этот параметр можно сочетать только с параметрами -i, -ir или -r. Он не доступен с версиями IIS, предшествующими IIS 6.0, или с версиями ASP.NET, предшествующими ASP.NET версии 2.0.

-ga user

Предоставляет указанному пользователю или группе пользователей доступ к метабазе IIS и другим каталогам, используемым ASP.NET.

Этот параметр недоступен с версиями ASP.NET, предшествующими ASP.NET 2.0.

-i

Устанавливает версию ASP.NET, связанную с программой Aspnet_regiis.exe, и обновляет сопоставления сценариев в корне метабазы IIS и далее по дереву.

Обновляются только сопоставления сценариев, использующие более раннюю версию ASP.NET. Этот параметр не влияет на приложения, использующие более позднюю версию.

-ir

Устанавливает версию ASP.NET, связанную с программой Aspnet_regiis.exe, и только регистрирует ASP.NET в IIS.

Этот параметр не обновляет сопоставления сценариев. Чтобы установить ASP.NET и обновить сопоставления сценариев, задайте параметр -i.

-k path

Удаляет сопоставления сценариев со всеми версиями ASP.NET из всех приложений ASP.NET по заданному пути к корневому каталогу приложения и его подкаталогам.

-kn path

Удалить сопоставления сценариев со всеми версиями ASP.NET из приложения ASP.NET только по заданному пути к корневому каталогу приложения.

Этот параметр не влияет на приложения в подкаталогах для пути, заданного параметром path.

-lk

Выводит список путей и версий для всех ключей метабазы IIS, сопоставленных с ASP.NET.

Ключи, наследующие сопоставления сценариев ASP.NET от родительского ключа, не отображаются.

-lv

Перечисляет состояния и пути установки для всех версий ASP.NET, установленных на компьютере.

-norestart

Запрещает перезапуск службы World Wide Web Publishing после установки или обновления сопоставлений сценариев ASP.NET. Если этот параметр не используется, все пулы приложений перезапускаются.

Этот параметр используется с параметрами -i или -r при перезапуске рабочего процесса IIS вручную.

-r

Обновляет сопоставления сценариев в метабазе IIS и далее вниз по дереву, чтобы они указывали на версию ISAPI ASP.NET, связанную с программой Aspnet_regiis.exe.

Все существующие сопоставления сценариев будут указывать на версию ISAPI ASP.NET, связанную со средством регистрации IIS ASP.NET, независимо от текущей версии.

-s path

Устанавливает сопоставления сценариев, указывающие на версию ISAPI ASP.NET, связанную с программой Aspnet_regiis.exe, для всех приложений ASP.NET в указанном корневом каталоге приложения и его подкаталогах. Обновляются все сопоставления сценариев в указанном каталоге и его подкаталогах, использующие более раннюю версию ISAPI ASP.NET.

-sn path

Устанавливает сопоставления сценариев, указывающие на версию ISAPI ASP.NET, связанную с программой, для приложения ASP.NET в указанный корневой каталог приложения. Обновляются все сопоставления сценариев в указанном каталоге, использующие более раннюю версию ISAPI ASP.NET.

Этот параметр не влияет на приложения, расположенные в подкаталогах пути, заданного параметром path.

-u

Удаляет с компьютера версию ASP.NET, связанную со средством регистрации IIS для ASP.NET. Существующие сопоставления сценариев для этой версии ISAPI ASP.NET автоматически повторно сопоставляются с самой поздней из установленных версий ISAPI ASP.NET.

-ua

Удаляет с компьютера все версии ASP.NET.

-?

Отображает синтаксис команд и параметры средства регистрации IIS для ASP.NET.

Параметры конфигурации

Параметр

Описание

-config+

Включает удаленный доступ к конфигурации ASP.NET на компьютере.

-config-

Отключает удаленный доступ к конфигурации ASP.NET на компьютере.

-pa учетная запись контейнера

Предоставляет заданному пользователю или группе пользователей account доступ к заданному контейнеру ключей container. С этим аргументом могут использоваться следующие необязательные модификаторы:

  • -pku   Заменяет контейнер компьютера, используемый по умолчанию, пользовательским контейнером.

  • -csp provider   Задает используемый поставщик контейнера.

  • -full   Определяет, что должен быть добавлен полный доступ, а не доступ только на чтение, заданный по умолчанию.

-pc контейнер

Создает пару ключей "открытый/закрытый" RSA в заданном контейнере. С этим аргументом могут использоваться следующие необязательные модификаторы:

  • -size keySize   Задает размер ключа. По умолчанию используется значение 1024 байт.

  • -pku   Заменяет контейнер ключей, используемый по умолчанию, пользовательским контейнером.

  • -exp   Задает, что для закрытых ключей должна быть предусмотрена возможность экспорта.

  • -csp provider   Задает используемый поставщик контейнера.

-pd раздел

Расшифровывает раздел конфигурации. С этим аргументом могут задаваться следующие необязательные параметры:

  • -app virtualPath   Задает, что шифрование должно выполняться на уровне включенного пути.

  • -location subPath   Задает подкаталог для расшифровки.

  • -pkm   Определяет, что вместо файла Web.config должен быть расшифрован файл Machine.config.

-pdf раздел webApplicationDirectory

Расшифровывает заданный раздел конфигурации файла Web.config в заданном физическом (не виртуальном) каталоге.

-pe раздел

Шифрует указанный раздел конфигурации. С этим аргументом могут использоваться следующие необязательные модификаторы:

  • -prov provider   Определяет используемый поставщик функций шифрования.

  • -app virtualPath    Определяет, что шифрование должно выполняться на уровне включенного пути.

  • -location subPath   Определяет подкаталог для шифрования.

  • -pkm   Определяет, что вместо файла Web.config должен шифроваться файл Machine.config.

-pef section webApplicationDirectory

Шифрует заданный раздел конфигурации файла Web.config в заданном физическом (не виртуальном) каталоге.

-pi файл контейнера

Импортирует пару ключей "открытый/закрытый" RSA в контейнер, заданный параметром container, из заданного XML-файла file. С этим аргументом могут использоваться следующие необязательные модификаторы:

  • -pku   Заменяет контейнер компьютера, используемый по умолчанию, пользовательским контейнером.

  • -exp   Определяет, что закрытые ключи могут быть экспортированы.

  • -csp provider   Задает используемый поставщик контейнера.

-pr учетная запись контейнера

Удаляет для заданного пользователя или группы account разрешение на доступ к заданному контейнеру ключей container. С этим аргументом могут использоваться следующие необязательные модификаторы:

  • -pku   Заменяет контейнер компьютера, используемый по умолчанию, пользовательским контейнером.

  • -csp provider   Задает используемый поставщик контейнера.

-px файл контейнера

Экспортирует пару ключей "открытый/закрытый" RSA из заданного контейнера в заданный XML-файл. С этим аргументом могут использоваться следующие необязательные модификаторы:

  • -pku   Заменяет контейнер компьютера, используемый по умолчанию, пользовательским контейнером.

  • -csp provider   Задает используемый поставщик контейнера.

-pz контейнер

Удаляет заданный контейнер ключей. С этим аргументом может задаваться следующий необязательный модификатор:

  • -pku   Заменяет контейнер компьютера, используемый по умолчанию, пользовательским контейнером.

Заметки

Сосуществование на компьютере нескольких установленных версий ASP.NET называется параллельным выполнением. В этом случае службе IIS требуется указать, какая версия ISAPI ASP.NET (aspnet_isapi.dll) должна обрабатывать ту или иную страницу в приложении ASP.NET. Версия ISAPI ASP.NET, связанная с приложением ASP.NET, определяет версию среды CLR, используемую приложением. Приложение ASP.NET связано с версией ISAPI ASP.NET с помощью сопоставления сценариев в IIS. Для упрощения процесса конфигурации приложений ASP.NET все версии ASP.NET поставляются со связанной версией средства Aspnet_regiis.exe.

k6h9cz8h.alert_note(ru-ru,VS.90).gifПримечание.

С каждой версией .NET Framework поставляется уникальная версия Aspnet_regiis.exe. Так как каждая конкретная версия этой программы работает только со связанной версией .NET Framework, убедитесь в правильности выбора инструмента для настройки приложения ASP.NET.

Средство регистрации IIS для ASP.NET обычно используется с параметром -s или -sn, чтобы восстановить сопоставление приложения ASP.NET с версией .NET Framework , с которой оно связано. Параметр -s применяется для обновления приложения в указанном корневом каталоге приложения и всех его подкаталогах. Если не нужно обновлять приложения, расположенные в подкаталогах, задайте параметр -sn. Чтобы обновить сопоставления сценариев одновременно для всех установленных на компьютере приложений ASP.NET, задайте параметр -r.

k6h9cz8h.alert_note(ru-ru,VS.90).gifПримечание.

Параметр path ссылается на корневой каталог приложения, а не на физический путь. Пример: W3SVC/1/ROOT/SampleApp1.

Напротив, средство регистрации IIS для ASP.NET можно использовать, чтобы удалять сопоставления сценариев для любых версий ASP.NET, для чего следует указать параметры -k or -kn и путь к корневому каталогу нужного приложения. Если указанный корневой путь наследует сопоставление сценария от родительского корневого пути, параметры -k и -knне действуют.

Параметр -norestart предотвращает перезапуск службы World Wide Web Publishing после установки или сопоставлений сценариев ASP.NET. Этот параметр следует использовать, если перезапуск всех пулов приложений нежелателен. Этот параметр следует использовать, если при запуске нескольких веб-узлов в IIS, в различных пулах приложений, перезапуск всех приложений нежелателен.

Обратите внимание, что любые изменения, выполненные с помощью вкладки ASP.NET консольного приложения службы IIS, также вызывают перезапуск всех пулов приложений. Если нужно изменить версию ASP.NET, используемую приложением, не вызывая перезапуск всех пулов приложений, выполните следующие две команды для изменения версии.

aspnet_regiis -s w3svc/<instance>/root -norestart
iisapp /a <app pool> /r

Средство регистрации IIS для ASP.NET также может использоваться для установки и удаления связанной версии ASP.NET. Параметр -i используется для установки ASP.NET и для обновления сопоставлений сценариев для всех существующих приложений ASP.NET. Чтобы установить ASP.NET без обновления сопоставлений сценариев, используется параметр -ir. Для удаления версии ASP.NET, связанной с инструментом, используется параметр -u. Чтобы удалить с компьютера все версии ASP.NET, можно использовать параметр -ua.

Средство регистрации IIS для ASP.NET можно также использовать для просмотра сведений о ASP.NET. Чтобы перечислить состояния и пути установки для всех версий ASP.NET, установленных на компьютере, используется параметр -lv. Чтобы просмотреть пути ко всем ключам метабазы IIS, которые сопоставлены ASP.NET, используется параметр -lk.

Клиентский сценарий, например проверка на стороне клиента, может быть установлен и удален с помощью программы Aspnet_regiis.exe. Параметр -c используется для установки клиентского сценария для версии ASP.NET, связанной с этой программой, в подкаталог Aspnet_client каждого каталога узла IIS. Чтобы удалить клиентский сценарий для версии ASP.NET, связанной с этой программой, используется параметр -e. Чтобы удалить клиентский сценарий для всех установленных версий ASP.NET, используется параметр -ea.

Если при использовании олицетворения у учетной записи олицетворения отсутствует доступ на чтение к метабазе IIS, при попытке доступа к DirectoryEntry возникает исключение COMException с сообщением "Доступ запрещен". Это может произойти, когда в корневом каталоге приложения существует подкаталог Code. Эта ошибка также может произойти, когда приложение сопоставляется с общей папкой UNC и у учетной записи UNC отсутствует доступ на чтение к метабазе. В обоих случаях проблема решается путем запуска средства регистрации IIS для ASP.NET с параметром **-ga **пользователь для олицетворения или учетной записи UNC.

Дополнительные сведения о параллельном выполнении в ASP.NET см. в разделе Side-by-Side Support in ASP.NET. Дополнительные сведения о сопоставлениях сценариев и корневых путей приложений см. в документации по IIS на веб-узле корпорации Майкрософт.

Примеры

Приведенная ниже команда устанавливает сопоставления сценариев, указывающие на версию ASP.NET, связанную с программой Aspnet_regiis.exe, с приложением SampleApp1 и всех его дочерних приложений.

aspnet_regiis -s W3SVC/1/ROOT/SampleApp1

Следующая команда обновляет сопоставления сценариев только для приложения SampleApp1, не влияя на приложения, расположенные в подкаталогах.

aspnet_regiis -sn W3SVC/1/ROOT/SampleApp1

Следующая команда устанавливает версию ASP.NET, связанную со средством регистрации IIS для ASP.NET и обновляет сопоставления сценариев для всех существующих приложений ASP.NET. Обратите внимание, что обновляются только приложения, сопоставленные с более ранними версиями ASP.NET.

aspnet_regiis -i

Следующая команда устанавливает версию ASP.NET, связанную со средством, но не обновляет сопоставления сценариев для установленных приложений ASP.NET.

aspnet_regiis -ir

Следующая команда отображает состояния и пути установки для всех версий ASP.NET, установленных на компьютере.

aspnet_regiis -lv

См. также

Ссылки

Инструменты .NET Framework

Другие ресурсы

Параллельное выполнение