Путь метабазы IIS для aspnet_compiler в IIS7
Я пытаюсь использовать aspnet_compiler через командную строку для создания и публикации веб-приложения, работающего на веб-сайте IIS7 по умолчанию. Я пытаюсь найти правильный синтаксис аргумента -m для указания пути метабазы IIS.
Вся документация относится к путям метабазы IIS6 в формате "LM/W3SVC/1/Root". Я наткнулся на эту информацию, которая указывает, что путь метабазы IIS7 должен выглядеть как "MACHINE/WEBROOT/APPHOST/Default Web Site".
Фактическая команда выглядит следующим образом:
aspnet_compiler -nologo -m "MACHINE/WEBROOT/APPHOST/Default Web Site/" \\productionwebserver\inetpub\websitefolder\
Однако это приводит к следующей ошибке: ошибка 1002: "MACHINE/WEBROOT/APPHOST/Default Web Site/" не является правильно сформированным путем метабазы IIS.
Мой веб-сайт по умолчанию называется "Веб-сайт по умолчанию". Я также исследовал использование синтаксиса указания виртуального пути и физического пути вместо пути метабазы, например:
aspnet_compiler -nologo -v / -p ".."
(этот командный файл существует в подпапке папки проекта сайта)
Это приводит к следующей ошибке: ошибка ASPCONFIG: Ошибка использовать раздел, зарегистрированный как allowDefinition='MachineToApplication' за пределами уровня приложения. Эта ошибка может быть вызвана тем, что виртуальный каталог не настроен как приложение в IIS.
Сайт хорошо строится из VS2010.
2 ответа
Используйте тот же путь, но убедитесь, что у вас установлен компонент совместимости метабазы IIS 6 для IIS 7,
http://learn.iis.net/page.aspx/125/metabase-compatibility-with-iis-7/
Вы пытались использовать тот же путь, что и для 6.0 - как LM/W3SVC/1/ROOT?