如何设置IIS Express以在虚拟目录而不是root中运行Visual Studio项目?

时间:2011-09-16 20:26:27

标签: visual-studio visual-studio-2010 iis iis-7.5 iis-express

我正在使用VS 2010并使用IIS Express而不是Visual Studio的Web服务器。

默认情况下,Web应用程序在localhost的根目录下运行,如下所示:http://localhost:50369/

我希望它在http://localhost:50369/Enet/运行,因为这是它在发布时最终会出现的虚拟目录。

当我尝试添加虚拟目录时,我的applicationhost.config看了这个:

<site name="EssenceNet" id="1">
                <application path="/" applicationPool="Clr4IntegratedAppPool">
                    <virtualDirectory path="/" physicalPath="E:\dev\EssenceNet\Src\EssenceNet.Web" />
                </application>
                <application path="/ENet">
                    <virtualDirectory path="/" physicalPath="E:\dev\EssenceNet\Src\EssenceNet.Web" />
                </application>
                <bindings>
                    <binding protocol="http" bindingInformation=":50369:localhost" />
                </bindings>
            </site>

当我浏览http://localhost:50369/我的应用程序有效时。 当我浏览http://localhost:50369/Enet/我的MVC应用程序工作,但它找不到像CSS或JS文件这样的文件。它们的路径是我所期望的(除了前缀/Enet之外,与之前相同),但它们找不到。

正确执行此操作的步骤是什么?显然我在某个地方出了问题。 非常感谢您的帮助。

1 个答案:

答案 0 :(得分:6)

事实证明我的配置几乎是正确的,但应用程序需要是不同的物理路径。

即使您不使用它,您似乎也需要在root用户使用第一个应用程序。我只是将它的物理路径设置为/ ENet的物理路径以外的其他功能。