我在做什么:

开放Visual Studio社区2015 File ->新建->项目 在Visual c#: Web -> ASP下。NET Web应用程序 Web应用程序 并按f5弹出错误“无法连接到web服务器'IIS Express'”。

删除applicationhost。config,位于Documents\IISExpress\config中,不会更改错误消息。(程序文件和程序文件(x86)中也有一个IISExpress文件夹。)

我注意到一件事,我不知道这是不是问题

引用文件'lib/jquery-validation/jquery.validate.js'未找到。

我有一堆破烂,但我没注意到里面有什么。这里有一些内容:

“框架”:{“框架”

我没有注意到问题,但我有网络数据,如果这可以帮助找出为什么我不能连接到web服务器。我立即得到一个RST,ACK,所以我猜端口是关闭的,不管这个web服务器是什么,没有被设置。

关于这个问题的更多信息:800700c1 error from /trace:error

我试过了:

删除applicationhost。配置(和更改端口号) 以管理员身份运行visual studio 删除文档中的IISExpress文件夹(更改错误消息,直到文件夹重新安装) 切换SSL关闭和打开,复制url到启动框。(注意:我没有使用ssl) 清除所有SFC /scannow错误 从x86版本和64位版本启动iisexpress


当前回答

澄清

这里的很多答案都是一样的,比如“重新启动,它就神奇地重新工作了”。

好吧,10次中有9次人们会遇到这样的问题,因为ip地址已经被使用了。

回答

可能有2个正在使用的ip地址。你可以通过以下方式找到它们:

1)右键单击启动项目

2)点击“属性”

3)点击“调试”选项卡

在这里你可以看到你的“应用URL”和“SSL URL”。

如果你的“应用程序URL”正在使用中,只需在那里更改并保存它,它就会再次工作。 如果您的“SSL URL”正在使用中,请关闭VS,删除“applicationhost. conf”。在你的项目的隐藏。VS文件夹中打开“config”文件,然后再次打开VS。

其他回答

我用一种很简单的方法解决了它。

通过以下方式:

关闭Microsoft Visual Studio。 使用“以管理员身份运行”重新打开它

希望这对你有所帮助。: "))

我也有同样的问题,但我修复它的方式是通过去applicationhost。配置并删除一个不是由我添加的端口(IIS Express我猜),它将我的特定端口站点放在另一个端口上。

以下是配置文件中绑定的内容:

<bindings>
      <binding protocol="http" bindingInformation="*:54764:localhost" />
      <binding protocol="https" bindingInformation="*:44360:localhost" />
</bindings>

我删除了第一个绑定项,因为我想要的唯一端口是44360。我的配置文件现在看起来像这样:

<bindings>
      <binding protocol="https" bindingInformation="*:44360:localhost" />
</bindings>

现在我调试时看不到错误了。

我还注意到我的第二个API在我的项目有端口80也分配给它,我删除了它。

我在.net core 2.0中更新项目端口号时遇到了这个问题。

我分两步解决了这个问题:

步骤1:删除隐藏在主解决方案文件夹中的。vs文件夹。(在此之前关闭visual studio),然后当你再次启动visual studio时,其中的文件夹和文件(applicationhost.config)将由visual studio自动创建。 步骤2:对于多个启动项目,如果你仍然面临问题,那么一个接一个地作为启动项目运行,然后作为多个启动项目运行。

我刚刚将我的配置文件从“IIS Express”更改为“MyProjectName”(我认为是使用kestrel作为http服务器而不是IIS),现在它工作正常:

我不会假装完全理解MS bug造成的这个问题,但这里有另一个潜在的解决方案:

在.vs/config/applicationHost. conf文件中。在config文件中,找到<system.applicationHost><applicationPools>。在这些池下,确保managedRuntimeVersion属性值与系统的IIS配置中的值(和/或已安装的. net框架的版本)匹配。

例如,你可能会发现(正如我所做的)生成的文件有:

    <add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />

在我的例子中,你可以用:

    <add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0.30319" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />

注意从“v4.0”到“v4.0.30319”的替换。这就解决了问题。


发生了什么:

我相信VS正在生成一个applicationHost。. net框架的“默认”版本,这可能与系统上安装/配置的特定版本不匹配。您可以通过跟踪Process Monitor中的执行来调试/观察这个问题,并找到iisexpress.exe的命令行。在添加/trace:error的情况下运行此命令,将得到一个关于预装版本为v4.0的CLR失败的信息更丰富的消息。即:

启动IIS Express… 尝试预加载CLR版本v4.0时失败。Hr = 80131700 W3WP_HOST hr = 80131700初始化失败 过程模型关闭称为 无法启动iisexpress。


不管怎样,我觉得这可能会对其他人有所帮助,因为在网上有多个含有坏信息的推荐信是很常见的,我个人现在已经碰到过几次了。