创建虚拟目录失败,并显示以下错误


89

我不能解决这个问题

在此处输入图片说明

我建议我必须更改c:\Windows\System32\drivers\etc\hosts文件并在之后添加

# localhost name resolution is handled within DNS itself.

下一行:

127.0.0.1       mysite.dev

但这没有帮助。有什么建议么?

尝试在Microsoft Visual Studio 2012中打开网站项目时发生错误。



这是第二个或第三个Google链接,是我在互联网上搜索解决方案时得到的。这不是我所需要的。
Dmytro

Answers:


168

至少在我看来,这种情况经常发生在*.csproj.user文件位于项目目录中并包含<UseIISExpress>true</UseIISExpress>在项目目录中时。

或者,如Zachary Cutler所述,您还可以简单地执行以下操作:关闭Visual Studio,删除*.csproj.user文件,然后重新打开Visual Studio。这将迫使VS重建文件。


1
这对我不起作用,在vs2017 15.7.1更新之后,我遇到了这个问题。
马森·林

非常感谢!
Reuben Tanner

2
这对我没有用。我已删除.vs文件夹。已删除*.csproj.user,但仍给出相同的错误。
Zapnologica

1
这也为我工作,我只是删除了[的Myproj] .csproj.user文件,并将其加载-这是在VS2019 -在管理模式下运行
马克

33

我已经找到了解决方案。C:\Users\Administrator\Documents\IISExpress\config\applicationhost.config通过将站点添加到<sites>节点,我只需要编辑文件。


如果这不是您的答案,并且如果您遇到了这种情况,我删除.vs目录以清除缓存,并且没有注意到Visual Studio已将我的默认生成配置更改为自动生成的配置,即配置为使用IISExpress。因此,如果您有一个运行良好的项目,然后停止加载,我建议您在进行任何其他操作之前检查构建配置(我当然做不到)
saminpa

糟糕,虽然我之前的“有用”评论是准确的,但这不是造成错误错误消息的根本原因。那就是事实,即自动重新创建的.vs文件夹继承了NTFS加密。解密该文件夹后,无需编辑项目文件即可恢复正常。
saminpa

即使在6年后仍可使用。我在vs2017最新版本中遇到了这个问题。但是使用上面的信息解决了。
Awais

什么时候使用本地applicaionhost.config与解决方案文件夹中的本地?
Zapnologica

19

您可以选择在本地安装IIS,并在.csproj文件上编辑几个标签。打开您的csproj文件并转到部分,<VisualStudio>然后找到<UseIIS>True</UseIIS> 必须将其设置为true的标记,然后转到tag: <IISUrl>并设置将在其中托管应用程序进行测试的URL地址:

<VisualStudio>
      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
        <WebProjectProperties>
          <UseIIS>True</UseIIS>
          <AutoAssignPort>False</AutoAssignPort>
          <DevelopmentServerPort></DevelopmentServerPort>
          <DevelopmentServerVPath>/</DevelopmentServerVPath>
          **<IISUrl>http://localhost/myWebSiteAppSample</IISUrl>**
          <NTLMAuthentication>False</NTLMAuthentication>
          <UseCustomServer>False</UseCustomServer>
          <CustomServerUrl>
          </CustomServerUrl>
          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>

那就是。现在,您可以正常加载项目了。


有趣,这是我的情况的答案。
2015年

3
注意:**星号不应在文件中。当然。
ErikE

16

问题是您的项目设置要在本地IIS中执行,并且指定的URL不存在。

您可以执行一些操作来解决此问题。

选项1:(使用IIS Express)

1.)以XAML或在记事本中打开Web项目.csproj文件。

2.)找到这些属性并根据您的喜好进行设置。

UseIIS =否

UseIISExpress = true

就是这样。

选项2:(使用本地IIS)

遵循选项1的步骤,但是更改以下属性。

UseIIS =真

IISUrl = https://本地主机

UseIISExpress =假


选项1不工作
倚天阿塔莱

选项2对我
有用

选项2工作:)
Senura Dissanayake,

9

可以通过删除项目目录中名为.vs的文件夹来解决此问题。

这解决了问题,因为在删除.vs文件后打开项目时,它将创建具有子文件夹config的相同文件夹以及具有项目名称的文件夹。

config文件夹applicationhost包含成功运行项目所需的必要设置。


6

我只是转到错误中命名的目录,并将其重命名为applicationhost.config,然后重新启动,VS创建了一个新文件并运行良好。


2
  • 试图在答案中提到的几种方法,但最后什么工作对我来说是调换<IISUrl>.csproj<CustomServerUrl>

编辑:

  • 以上对我来说并没有解决问题的根本原因。但是,如果您最近进行了Windows更新,则可能是导致此问题的原因。尝试执行netsh http add iplisten 0.0.0.0,看看是否可以解决问题。

希望这些对仍在寻找方法的人有所帮助。


1
在所有事物中(我是说ALL),这个(<CustomServerUrl>)最终为我完成了窍门。非常感谢!
灰烬

1

我不知道为什么,我的applicationhost.config文件完全丢失了 C:\Users\Administrator\Documents\IISExpress\config\夹中的。

复制/粘贴 C:\inetpub\history\applicationhost.config到该文件夹​​似乎为我解决了问题。

从这里得到了这个主意。


就我而言,文件已损坏。所以我删除了它,并用系统搜索中找到的applicationhost.config文件替换了它。我没有管理员权限,因此无法访问inetpub \ history。我认为Visual Studio总是希望使用此配置文件,但是此后,即使我从IISExpress \ config位置反复删除了applicationhost.config文件,VS仍在继续创建它。看起来有时某个设置已损坏,但是一旦与正确的设置内联,VS便会自己处理所有设置。
kumar chandraketu

1
  1. 在控制面板中打开Windows功能“ Internet信息服务”。
  2. 打开“ .csproj”文件并找到
  3. 根据您的要求修改此行。 http:// localhost:777 /
  4. 立即打开项目/解决方案
  5. 如果再次加载失败,请右键单击解决方案,然后选择“重新加载项目”。

1

我知道这可能是罕见的情况,但是我想把它放在这里:

我的csproj文件设置为“只读”(不要问我如何管理),但是在我关闭“只读”访问权限之后,一切都很好。(VS2017)


0

由于更改了网络密码,我遇到了同样的问题。我更改了NetExtendor登录密码,但必须使用旧密码登录笔记本电脑。

请尝试以下步骤解决此问题:

使用任何密码有效的计算机登录计算机使用任何密码有效的计算机登录vpn ctl-alt-del锁定计算机,然后使用新密码将其解锁

它对我有用:-)

谢谢!


0

不是完全相同的错误,但是由于错误的前半部分匹配,所以我得到了这个答案。您的applicationhost.config文件可能只是只读的。取消这个错误为我解决了。该错误专门调用了该文件,因此您应该可以轻松找到它。


0

我的问题是Windows 10 Defender。我过去曾授予IIS权限,但现在好像忽略了它。稍后将进行研究,但是现在我禁用了受控文件夹的访问,并且它起作用了。


0

我想在VS 2019中打开Visual Studio 2017的现有项目,并遇到相同的问题。我发现它的版本相关问题。解决方案是:在较新的VS中创建一个新项目,并从较旧的VS复制代码。


欢迎来到SO!问题是,没有提到VS版本的任何更改。发布答案时,请检查您是否在回答问题。如果没有,那么只需提出一个问题并回答自己,这样对社区会有所帮助。
DavidGarcíaBodego,

0

尝试解密applicationhost.config文件。那对我有用。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.