IIS Express с веб-сайтом Project, как использовать внутри виртуального каталога? - PullRequest
3 голосов
/ 09 мая 2011

Моя производственная среда имеет корневой каталог, и мой виртуальный каталог будет находиться в папке / brazil внутри корневого каталога.

Когда я конвертирую проект своего веб-сайта (не веб-приложения), он корректно работает с Cassini в / brazilтак как папка моего сайта находится в Бразилии, IIS Express поместил сайт в корень, как я могу это изменить?

1 Ответ

4 голосов
/ 08 февраля 2012

Я вижу похожие проблемы с IIS Express с веб-приложениями. Из того, что я вижу, IIS Express фактически позволяет вам определять папку в поле «URL проекта», но затем при запуске генерирует 2 веб-сайта, один с папкой, а другой для корневого приложения. Проблема в том, что он использует одну и ту же папку для обоих, что вызывает проблемы наследования web.config.

Мое решение состояло в том, чтобы отредактировать файл хостинга и изменить физический путь для корневого виртуального каталога на пустую папку в моей системе

Например:

<site name="MySite1" id="1">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\VisualStudioProjects\2010\MySite1\MySite1" />
    </application>
    <application path="/ssd">
        <virtualDirectory path="/" physicalPath="C:\VisualStudioProjects\2010\MySite1\MySite1" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:59473:localhost" />
        <binding protocol="https" bindingInformation="*:44302:localhost" />
    </bindings>
</site>

К этому:

<site name="MySite1" id="1">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\TEMP\New folder" />
    </application>
    <application path="/ssd">
        <virtualDirectory path="/" physicalPath="C:\VisualStudioProjects\2010\MySite1\MySite1" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:59473:localhost" />
        <binding protocol="https" bindingInformation="*:44302:localhost" />
    </bindings>
</site>
...