Виртуальный каталог не настраивается как приложение в IIS Express VS 2015
У меня есть два сайта (веб-приложения),
- WebAppOne
- WebAppTwo
оба работают на IIS Express из Visual Studio 2015
Вот мой файл applicationatoinhost.config
<site name="WebAppOne" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Projects\WebAppOne\trunk" />
<virtualDirectory path="/SubApp" physicalPath="C:\Projects\WebAppOne\trunk\WebAppTwo" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:8181:localhost" />
</bindings>
</site>
Когда я запускаю WebAppOne из Visual Studio на IIS Express, он правильно указывает на виртуальный каталог, но с разрешением выдает ошибку.
Ошибка использовать раздел, зарегистрированный как allowDefinition='MachineToApplication' за пределами уровня приложения. Эта ошибка может быть вызвана тем, что виртуальный каталог не настроен как приложение
Как я могу решить эту проблему, придерживаясь IIS Express, работающего из Visual Studio в режиме отладки.
Решение: благодаря @Lex Li
<site name="WebAppOne" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Projects\WebAppOne\trunk" />
</application>
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/SubApp" physicalPath="C:\Projects\WebAppOne\trunk\WebAppTwo" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:8181:localhost" />
</bindings>
</site>
1 ответ
Вы получаете конфигурацию неправильно. Второй проект должен быть настроен как разделительное приложение с собственным корневым виртуальным каталогом, указывающим на папку проекта.
Ваши текущие настройки ошибочно устанавливают его как второй виртуальный каталог в первом приложении, и тогда его web.config приведет к такой ошибке.