Visual Studio在applicationhost.config中放置虚拟目录的路径错误?

4

我最近将"My Documents"文件夹从C:驱动器移动到D:驱动器。这似乎破坏了我的在Visual Studio中调试Web应用程序的能力。我假设visual studio会在applicationhost.config中创建以下条目,我想知道根virtualDirectory的第一个physicalPath来自何处,因为我非常确定这是问题所在(当打开解决方案时,我已经基本确认VS会创建像下面这样的条目):

            <site name="My.Application-Site" id="2">
            <application path="/" applicationPool="Clr4IntegratedAppPool">
                <virtualDirectory path="/" physicalPath="C:\Users\myname\Documents\My Web Sites\My.Application-Site" />
            </application>
            <application path="/My" applicationPool="Clr4IntegratedAppPool">
                <virtualDirectory path="/" physicalPath="D:\repos\MyCheckout\My\My.Application" />
            </application>
            <bindings>
                <binding protocol="http" bindingInformation="*:49924:localhost" />
            </bindings>
        </site>

当我尝试在调试器中运行应用程序时,浏览器会弹出一个错误提示框,相关内容如下。请注意,即使它似乎已经知道 tracelogfiles 的正确位置,web.config 文件的路径仍然使用 C:。
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.

Config Error       Cannot read configuration file
Config File    \\?\C:\Users\myname\Documents\My Web Sites\My.Application-Site(2)\web.config
Requested URL      http://localhost:50616/My/
Request Tracing Directory      D:\users\myname\My Documents\IISExpress\TraceLogFiles\

所以问题是在Visual Studio(或IIS)中确定web.config文件路径在哪里,我该如何更改它。还有其他原因或见解可以提供,解释为什么我会收到500.19错误吗?另一个最近的变化(除了移动我的文档)是我卸载了VS Ultimate 2013的试用版,并安装了VS Pro 2013 - 这可能会导致这种情况吗?这两个更改都是在我上次能够正常调试应用程序和出现此错误之间进行的。

检查IIS是否可以读取该文件夹。 - Aron
3
哪个文件夹?如果你是指\C:\Users\myname\Documents\My Web Sites\My.Application-Site(2)\web.config,那么问题就在于这不再是正确的文件夹,因为我已经将"My Documents"移动到了D驱动器。由于VS正在创建applicationhost.config中的条目,我想它忽略了我更改了"My Documents"位置的事实,但我不知道这是在哪里确定的。一直在VS选项或项目属性中寻找相关内容,但未找到。 - Greylander
最简单的方法是使用IIS管理工具。它有一个漂亮的图形用户界面。它在控制面板下的管理工具中。PS:IIS不使用我的文档路径...它可能使用绝对路径。 - Aron
1
最简单的方法是什么?嗯...恰巧,在控制面板中没有IIS管理器...这很奇怪。当我卸载Visual Studio 2013 Ultimate时,是否已卸载了IIS,然后在安装Visual Studio 2013 Pro时没有重新安装? - Greylander
看起来IIS确实随着VS Ult 2013一起被卸载了,但是没有随着VS Pro 2013重新安装...尽管根据微软的说法应该这样做... http://msdn.microsoft.com/en-us/library/58wxa9w5.aspx - Greylander
1
好的,所以我启用了IIS管理器,但不知道在解决这个问题方面应该做什么。结果发现IIS已经安装了...但在Windows功能中被关闭了,显然是由于卸载VS Ult 2013而没有被VS Pro重新打开...这反过来又没有给出任何迹象表明这是调试应用程序时的问题。请注意,应用程序本身似乎可以运行,在浏览器中出现错误。 - Greylander
1个回答

2

有人在寻找答案:"Visual Studio(或IIS)中的web.config文件路径在哪里确定,如何更改它" 或者 "我将我的应用程序移动到其源文件夹之外"

右键单击项目属性 >Web选项卡和创建虚拟目录按钮。

当我在两台不同的机器上开发(和调试,当然),并且使用由git管理的不同路径(和驱动器)访问源代码时,这种情况就发生了。

希望这有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接