Как вы работаете с виртуальным путем IIS для приложения? - PullRequest
44 голосов
/ 26 ноября 2009

Когда я пытаюсь изменить версию ASP.NET на v4 на IIS 6, я получаю следующее предупреждение:

Изменение версии Framework требует перезапуска службы W3SVC. Кроме того, вы можете изменить версию Framework без перезапуска службы W3SVC, выполнив: aspnet_regiis.exe -norestart -s IIS-Viirtual-Path

Хотите продолжить (это изменит версию Framework и перезапустит службу W3SVC)?

Как мне работать IIS-Virtual-Path?

Я испробовал очевидные пути, т.е.

aspnet_regiis.exe -norestart -s "/WebSites/Extranet/AppName"

Где WebSites - это имя папки в IIS, Extranet - имя корневого приложения, а AppName - имя приложения виртуального каталога, которое я пытаюсь изменить.

Спасибо!

Edit:

Как определить виртуальный путь для виртуального каталога Auth в следующих настройках IIS6:

alt text
(источник: imgbag.com )

Я пробовал:

aspnet_regiis.exe -norestart -s "/Web Sites/Extranet/Auth"

aspnet_regiis.exe -norestart -s "Auth"

Я получаю:

Installation stopped because the specified path (WhateverIPutIn) is invalid.

Ответы [ 6 ]

71 голосов
/ 26 ноября 2009

Я решил это. Я должен был использовать:

aspnet_regiis -lk для получения списка папок в формате "IIS"

Тогда я делаю что-то вроде:

aspnet_regiis.exe -norestart -s "W3SVC/1234567/root/AppName"

29 голосов
/ 11 мая 2010

Моя проблема с запуском aspnet_regiis -lk заключалась в том, что я получил неполный список идентификаторов, а также не знал, какой идентификатор соответствует веб-сайту, с которым я хотел работать.

Более простой способ найти идентификаторы для ваших веб-сайтов - щелкнуть по узлу (папке) «Веб-сайт» в IIS , как на этом рисунке . Справа вы увидите список всех веб-сайтов с их «Идентификаторами», State, IP-адресами и портами.

Image showing IDs

13 голосов
/ 02 марта 2011

Вот хорошее резюме

W3SVC / + [Идентификатор сайта из консоли IIS] + / root

например W3SVC/1234567/root

Чтобы найти Идентификатор

Нажмите на Веб-сайты узел (папка) в IIS.
Справа находится список всех веб-сайтов с их Identifiers, State, IP-адресами и портами.

Теперь все вместе

aspnet_regiis.exe -norestart -s "W3SVC/1234567/root"

Наконец

Добавление виртуального каталога в конец W3SVC/1234567/root/APPNAME, если вам нужно

4 голосов
/ 26 ноября 2009

Я думаю, вам нужно использовать путь, начинающийся с / W3SVC. Может быть эта статья поможет вам в дальнейшем.

3 голосов
/ 19 января 2011

Чтобы изменить версию Framework без перезапуска W3SVC: Запустите aspnet_regiis.exe -norestart -s IIS-Virtual-Path

aspnet_regiis.exe должен быть запущен из% SystemRoot% \ Microsoft.NET \ Framework (требуется версия dotnet) например, C: \ WindowsMicrosoft.NET \ Framework \ v4.0.30319

IIS-Virtual-Path: W3SVC / (WebsiteID) / root [/ AppName] Где (WebsiteID) - это идентификатор, указанный в IIS (см. Изображение Диего С выше) и [/ appname] - это необязательный виртуальный каталог под вашим сайтом. (например, W3SVC / 1234567890 / root / dotnetnuke)

  1. Открыть командную строку
  2. Перейдите (CD) к C: \ WindowsMicrosoft.NET \ Framework \ v4.0.30319
  3. Выполнить aspnet_regiis.exe -norestart -s «W3SVC / 1234567890 / root / dotnetnuke»
1 голос
/ 18 декабря 2012

Я мог последовать совету согласно сообщению Джошкомли здесь, но мне пришлось получить имя виртуального пути из сгенерированного файла XML. Вы можете использовать конфигурацию сайта экспорта IIS в файл (XML-файл). Внутри есть несколько тегов, которые выглядят так:

 <IIsWebVirtualDir   Location ="/LM/W3SVC/2070355274/root" 

Просто выберите первый, заканчивающийся на «root».

, который работал отлично.

(пробовал, но не могу опубликовать изображение здесь)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...