我在做什么:

开放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


当前回答

如果你读到这里,那么上面的答案可能都不适合你。

我解决这个问题的办法是关闭你的电脑,确保保存了所有必要的打开的文件。重启你的电脑,运行Visual Studio,然后你就可以开始了。

其他回答

从项目文件夹中删除bin和obj文件夹并重新构建。

请确保下列注册表项\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\ListenOnlyList不包含未绑定到您机器上已启用的网络适配器的IP地址。

这是我在尝试了这个SO问题中列出的各种其他解决方案后出现问题的原因,例如:

删除applicationhost.config 打开和关闭SSL。 修改端口号。 手动关闭IIS Express进程。 重新安装IIS Express。 修复Visual Studio。 安装新版本的Visual Studio 创建一个新的。net框架Web应用程序。 创建一个新的。net核心Web应用程序。 执行netsh urlacl命令 运行netsh http add iplisten ipaddress=:: 以管理员身份运行Visual Studio。 确保旁路遍历权应用..

显然,当IIS express试图启动时,它正在尝试绑定到这个无效的IP。解决办法是删除无效的IP。这个额外的无效可能来自我的家庭无线网络,而在工作中,我通过硬连线适配器分配了一个不同的IP。

一个全面的解决方案可能是删除注册表项中的所有ip,然后运行netsh http add iplisten ipaddress=::命令允许监听所有地址。

在注意到以下事件日志条目后,我能够追踪到这个问题:

IIS Express: The worker process for app pool 'WebApplicationNetCore AppPool', PID='23260', failed to initialize the http.sys communication when asked to start processing http requests and therefore will be considered ill by W3SVC and terminated. The data field contains the error number. IIS Express: The worker process failed to initialize correctly and therefore could not be started. The data is the error. HTTP Event: Unable to bind to the underlying transport for 192.168.1.42:52999. The IP Listen-Only list may contain a reference to an interface which may not exist on this machine. The data field contains the error number.

对我来说,问题是其他进程正在使用相同的端口。(在我的情况下,它是outlook使用相同的端口作为我的网站,因此我的网站无法启动)

是的,你可以改变本地端口,但如果你正在运行一个API或其他应用程序需要的东西,你不总是想这样做。

要获得哪些应用程序正在使用哪些端口的列表,打开CMD并键入"netstat -aon" 您将得到一个端口列表。找到您的站点应该使用的端口,或者您想要使用的端口,并写下/记住PID。

现在打开任务管理器,单击“details”选项卡。找到带有PID的进程并结束它。现在您应该能够使用该端口启动IIS Express。

当我在applicationhost中添加一个新的绑定时,我的绑定就会发生。配置,以管理员身份运行解决了这个问题。

我的解决方案(对于。net core 2.0)是我忘记在applicationUrl中添加端口号,在launchSettings.json中的iisExpress下

"iisExpress": {
  "applicationUrl": "https://localhost:50770",
  "sslPort": 50770
}