无法启动Web服务器

我有Visual Studio 2012中的asp.net web应用程序项目。当我想启动它,我有以下错误:

无法启动IIS Express Web服务器:端口“4012”正在使用中

这个问题从无到有。如何解决?

从MSDN库

当您运行文件系统网站时,Visual Studio不能保证您指定的端口可用。 如果在运行页面时端口正在使用,Visual Studio会显示错误消息。

要更改IIS Express使用的端口来运行您的程序,您应该遵循MSDN上本文所述的过程

如何为开发服务器指定端口

简而言之,我们需要编辑文件%systemdrive%:\Users\<username>\Documents\IISExpress\config并更改在该文件中find的绑定信息并更改IIS Express的其他configuration。

由于这种解决方法不是那么简单,我build议closures试图在开发计算机上使用该端口访问的应用程序。 查找来自Microsoft的特定工具,如TCPView ,可以帮助发现抓取您的端口的应用程序。 通常它只是浏览器

我在Visual Studio 2012中遇到类似的问题:

错误 :“无法启动IIS Express Web服务器。

无法为站点“MySite”应用程序“/”注册URL http:// localhost:1030 /。 错误描述:进程无法使用文件,因为正在被另一个进程使用。 (0x85968574)“

原因 :实际上,这个端口号是在运行时dynamic生成的。 它保证可用。 如果它被某个其他工艺项目获取,则不会运行。 所以我们需要尝试另一个端口。

解决scheme :我在互联网上find了各种解决scheme,但问题仍未解决。 最后我试了下面的解决scheme

  1. 在解决scheme资源pipe理器 – >属性中右键单击项目
  2. 点击Web(在LHS上)。
  3. 查看本地IIS Web服务器(默认情况下,将selectradio btn)。
  4. 更改项目URL的端口号,例如:http:// localhost:1030 /到http:// localhost:45896 /(可能高于1024)
  5. 保存更改并运行应用程序。

这使IISconfiguration文件中的更改和自动需要的地方,所以我们不需要明确地更改任何代码。 这对我来说希望也能为你工作。

从命令提示符运行“netstat -b”,查看哪个应用程序正在使用端口4012.如果杀死进程IIS Express将能够使用端口4012启动。

一个解决scheme是删除或清除浏览器中的历史logging。 然后,重新启动Visual Studio并重新运行您的应用程序。

如果此解决scheme不起作用,那么是时候更改开发服务器(IIS Express)的端口号了。

我希望它可以帮助你。

杀死IIS Express工作进程为我解决了这个问题。 我试图debuggingVisual Studio 2015的两个并发实例并在两个Web解决scheme之间切换时遇到此问题。

如果这是一个不变的问题,那么凯达的解决scheme的答案是更好的,但在一个紧要关头,代码审查等,我更喜欢这个。

IIS Express工作进程

如果这种情况是突然的(一切正常,但突然出现无法启动IIS Express Web服务器的错误),那么对我而言经常使用的解决scheme很简单:

  • 杀死IISExpress进程
  • 更重要的是, closures所有的浏览器进程 (Firefox,Chrome,Chrome开发工具,IE等)

工程就像一个魅力:)如果没有,尝试不同的解决scheme,从这个线程。

PS。 我把它作为答案发布,所以可以很容易地find答案,尽pipe有人在评论中的某处写了这个答案。

从configuration文件中删除额外的绑定。

以pipe理员身份运行命令提示符并键入。

1。 netsh http显示urlacl

你会看到一个已经使用过的url列表,确保你正在尝试使用的列表已经在这里列出。 在下一步你必须删除这个保留。

2。 netsh http删除urlacl url = / 您的完整URL在列表中列出 /

确认后,重新启动IIS

就我而言,我不得不做两件事:

一个。 从这个文件中删除虚拟目录:

 C:\Users\<user-name>\Documents\IISExpress\config\applicationhost.config 

湾 从http://technet.microsoft.com/en-us/sysinternals/bb897437运行程序TCPView查找正在使用您的端口的进程,以及“结束进程”。;

在此之后,在Visual Studio中,打开Web应用程序项目属性,selectWeb选项卡,单击“创build虚拟目录”button重新创build虚拟目录。 以debugging模式运行Web应用程序。

只需重新启动计算机为我解决这个问题。

在Visual Studio同时运行Fiddler时,我也遇到过这个错误。 退出提琴手并重新运行应用程序对我来说是个诀窍。

尝试以下步骤:

  1. 在VS2013打开debugging>网站属性。
  2. select“Web”选项卡。
  3. 在“服务器”下,我发现“覆盖应用程序的根URL”未选中。 我检查并保存。

我遇到了和OP一样的问题:“这个问题从无到有”。

而我只是重新启动我的机器,它再次工作。 重新启动IIS Express不起作用。

简单地去任务pipe理器 – >进程 – > iisexpress – >右键 – >结束进程树 – >然后你可以build立和运行你的应用程序

通过以下步骤解决了问题: – 项目 – >属性 – > Web – 在服务器下select本地IIS。 – 保存设置并再次浏览

在web.csproj中更改端口号

 <DevelopmentServerPort>56048</DevelopmentServerPort> 

导航到IIS Express

 cd "C:\Program Files (x86)\IIS Express\" 

运行这个appcmd.exe list site /xml | appcmd delete site /in appcmd.exe list site /xml | appcmd delete site /in

另外,请清除%temp%临时文件并注销,或重新启动

这将删除所有的网站,享受!

另一个选项是从本地解决scheme文件夹中删除applicationhost.config

Visual Studio也将其存储在解决scheme文件夹根目录中的.vs\config文件夹中。

删除或编辑applicationhost.config帮助我解决这个问题

请删除您的项目.vs文件夹和applicationhost.config文件,然后运行您的代码。

在这里输入图像说明

比以上任何答案更可能:删除IISExpress文件夹,如本文中所述 。

在我的情况下,我尝试每一个职位,我发现在网上,没有任何作品,我做的最后一件事是改变项目右键点击/使用Visual Studionetworking服务器的选项,现在所有的作品好… … –