IIS Express与网站项目,如何使用内部虚拟目录?

Fel*_*oto 4 asp.net iis iis-express

我的生产环境有一个根目录,我的虚拟目录将位于根目录内的 /brazil 文件夹中。

当我转换我的网站项目(不是 Web 应用程序)时,由于我的网站文件夹是 brazil,因此可以与位于 /brazil 的 Cassini 正常工作,IIS Express 将该网站置于根目录,我该如何更改此设置?

Rau*_*jar 5

我在 IIS Express 和 Web 应用程序中发现了类似的问题。据我所知,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>
Run Code Online (Sandbox Code Playgroud)

对此:

<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>
Run Code Online (Sandbox Code Playgroud)