IIS Express - 500.19无法读取配置文件 - 因为它正在查看错误的路径

Joc*_*cie 61 .net iis-express

我最近将我的根TFS文件夹重命名为D:\TFS\systemstfs,D:\TFS\sys因为项目的一个路径对于Windows来说太长了.现在,当我尝试使用IIS Express(项目URL http:// localhost:59729/Flowers/wsBusinessLayer /)在VS2013中运行不同的项目(D:\ TFS\sys\companydomain.com\Dev\Flowers\wsBusinessLayer)时在浏览器中收到以下错误消息:

HTTP错误500.19 - 内部服务器错误
无法访问请求的页面,因为页面的相关配置数据无效.

模块 - IIS Web核心
通知 - BeginRequest
错误代码 - 0x80070003
配置错误 - 无法读取配置文件
配置文件 - \?\ D:\ TFS\systemstfs\companydomain.com\Dev\Flowers\web.config
请求的URL - http:// localhost:59729/Flowers/wsBusinessLayer/InformationServices.asmx
物理路径 - D:\ TFS\sys\companydomain.com\Dev\Flowers\wsBusinessLayer\InformationServices.asmx

(强调我的,D:是我机器上的第二个硬盘,而不是网络共享)

我很清楚问题是什么(配置文件路径错误)但我不知道如何解决它.我试过了:

  • 启用"抛出时中断CLR异常"
  • 从TFS重新获得解决方案
  • 重新启动
  • 切换到使用IIS,然后返回到Express
  • 谷歌搜索500.19,0x80070003,路径错误,无法读取配置文件,以及那些术语的各种组合

但没有运气.有没有人遇到过这个?

Son*_*oul 91

这是另一个可能的解决方案,不涉及捕获applicationhost.config文件:

  • 右键单击Web项目> Web>项目URL>(例如'localhost:5459'),然后递增端口号,这将强制该文件中的新条目.

在我的情况下,我还需要更改身份验证模式,可以通过以下方式完成:

  • 选择Web项目>按F4>根据需要设置Windows身份验证(在我的情况下启用).

  • 增加端口号有效!我认为在我的情况下,我最初尝试在新机器上运行该项目而不首先创建虚拟目录,并且可能有些东西被破坏了.即使我后来创建了目录,我也收到了这个错误.递增端口#解决了它.谢谢! (3认同)
  • WTF!非常感谢,对不起,我不能给你两票. (3认同)
  • 这是重命名项目后最简单的解决方案 (2认同)
  • 我认为这是因为我重命名了我的项目,所以我的dll也被重命名了.改变端口号就行了,谢谢! (2认同)

Joc*_*cie 27

事实证明我必须以%USERPROFILE%\Documents\IISExpress\config\applicationhost.config下列方式进行编辑-

<configuration>
  <system.applicationHost>
    <sites>
      <site name="wsBusinessLayer">
        <application path="/">
           <virtualDirectory path="/Flowers" physicalPath="D:\TFS\sys\companydomain.com\Dev\Flowers" />
Run Code Online (Sandbox Code Playgroud)

我不知道这个文件如何"正确"改变,但手动编辑它工作正常.

  • 这是Visual Studio 2013(及更低版本)使用的全局配置文件.VS2015使用每个解决方案配置文件,但如果更改源代码路径,仍需要手动编辑该文件. (7认同)
  • 对于遇到此问题的人,**applicationHost.config**文件位于_C:\ Windows\System32\inetsrv\config_ (4认同)
  • Visual Studio 2019 现在将“applicationhost.config”存储在用户项目文件中,请参阅 /sf/answers/906253421/ (2认同)

Mah*_*esh 14

在我的情况下,以下更改解决了此错误:

打开applicationhost.config从文件[SolutionFolder]>.vs[Hidden Folder]和改变的值overrideModeDefault在属性windowsAuthentication从部分拒绝允许.如下所示.


And*_*uul 10

在我的情况下,错误的路径记录在从同事收到的zip文件夹中的.vs文件夹中.通常,我通过源存储库获取源代码,其中未检入.vs.

删除.vs文件夹解决了我的问题.

  • 谢谢!只删除我的`.vs \ config \ applicationhost.config`效果更好 (2认同)

小智 9

更改我的MVC项目上的端口号解决了我的问题.我走了一个多小时寻找答案.谢谢Sonic Soul.

当一个微小的调整可以修复可怕的东西时,它总是令我惊讶.

我增加了端口号,错误地解决了错误.

Project Properties > Web > Project Url 
Run Code Online (Sandbox Code Playgroud)

使用Visual Studios 2015.