无法启动ASP.NET Development服务器,因为正在使用端口“1900”

问题描述 投票:23回答:17

我在VS 2008中开发得很好,并且在我的开发服务器上测试我的ASP.NET网站突然间我无法再运行我的网站了。一击到F5,就会出现以下消息:

无法启动ASP.NET Development服务器,因为正在使用端口“1900”。

我改变的端口并不重要,它总是在使用中。我试过了:

  • 更改端口号
  • 重新启动Visual Studio
  • 重新启动我的机器
  • 安装IIS

线索:我的IIS拒绝启动。但是当我早些开心工作时,我没有安装IIS,所以这可能不是问题;它可能只是突出其他东西。


更新:重新启动后,IIS确实启动,但此处的问题仍然存在。

asp.net visual-studio configuration asp.net-development-serv web-development-server
17个回答
35
投票

只需结束所有Webdev.WebServer.exe进程 - 为我做了诀窍。有时,当其中一个visual studio进程(webdev.webserver.exe)仍在运行并锁定时,此'无法启动,因为端口正在使用'错误。 webdev.webserver进程应该在你关闭浏览器或应用程序时结束,但是如果它们没有(例如我的Visual Studio崩溃但是如果让web服务器仍然运行)那么这可能会锁定端口,这将阻止visual studio启动你的项目。当您尝试F5您的应用程序(从visual studio启动您的应用程序),然后它与当前正在使用的端口冲突,并且上面的“因为端口XYZ正在使用”错误显示。

所以要解决它:在状态栏(在你的Windows时钟旁边)右键单击并“停止”所有ASP.net开发服务器图标。您还可以打开任务管理器并终止所有webdev.webserver.exe进程。


0
投票

将Cassini(Visual Studio的轻量级内置Web服务器)设置为使用不同的端口。您可以在项目的配置对话框中执行此操作


0
投票

我今天遇到了同样的问题,并找到了解决方案,所以我想我会增加两分钱:

我的特殊问题是,即使开发服务器显然正在运行并且我能够在其上使用该应用程序,我也会收到“正在使用的端口”错误消息。当它发生时,我当时正在开发一个Web服务,碰巧打开了设计视图 - 没有意识到。正是这个Web服务的设计视图试图启动开发服务器 - 这就是为什么我不能在没有收到错误的情况下键入单个字符的代码。

关闭Web服务的设计视图......问题解决了。

我真诚地希望有一天能帮助别人。

干杯

伊恩


0
投票

我有同样的问题,“无法启动asp.net开发服务器”原因是病毒程序...我已禁用它,它正常工作...

我希望这有帮助...


0
投票

只是抬头 - 我遇到了端口8000的这个错误,事实证明我仍然运行Aptana Studio - 显然在端口8000上运行了一个java服务器。退出Aptana并且一切正常。


0
投票

我遇到过同样的问题。问题是我还配置了IIS来使用这些端口。停止IIS或更改解决方案中使用的端口可能是解决方案。


0
投票

我只是停止了服务MsDepSvc - Web部署代理服务。然后我就能运行该网站了。


0
投票

在Visual Studio(Web)中更改端口IIS Express的Project Properties为我解决了同样的问题


0
投票

在项目的网站部分,右键单击并执行“属性窗口”而不是“属性页”将“使用动态端口”更改为TRUE。如果列出端口,则可以保留80 - 关键是使用动态端口。


9
投票

您可以通过从命令提示符运行netstat -o来检查给定端口上正在运行的软件。它将给出进程的进程ID(PID)。我在安装Skype之后就已经发生了这种情况,在IIS可以之前绑定到端口80。

您还可以在事件日志中查看IIS无法启动的消息。它可能提供足够的信息来解决问题或谷歌。


5
投票

我将NOD32防火墙配置为不再像浏览器那样看到VS,这个问题就解决了。

设置>防病毒和反间谍> Internet保护> HTTP

只需取消选中vs,问题就会得到解决。

我希望这最终有所帮助。


3
投票

右键单击任务栏中运行的小“服务器页面”,然后单击“关闭”。这通常发生在DEBUG进程意外终止或visual studio崩溃时。尝试一个像50000这样的高端口,看它是否有效。不应该有任何进程使用该端口。


3
投票

我有很长一段时间遇到同样的问题。我检查了这里写的所有想法。最终唯一对我有用的是:

  1. 右键单击卸载项目。
  2. 右键单击卸载的项目打开.csproj文件
  3. 重新加载项目(不做任何更改)

有时它解决了这个问题......

但是,我也有一个解决方法:

  1. 打开Visual Studio 2008命令提示符(开始 - > Microsoft Visual Studio 2008 - > Visual Studio工具 - >命令提示符)。
  2. 类型:webdev.webserver.exe /port:[your_port] /path:"[your_path]" your_port是服务器所需的端口,your_path是VS存储源文件的路径。请注意,您只需要粘贴.asmx文件所在的目录。
  3. 这应该手动运行服务器并侦听指定的端口。

2
投票

我找到了一个不需要重启的解决方案(适用于Windows 7)。

在时钟旁边,如果您单击标志旁边的三角形图标,则可以访问一个图标托盘。查找带有工具提示“ASP.net开发服务器 - 端口###”的图标。右键单击并选择“停止”!


1
投票

我曾经尝试过这种事情的一件事就是telnet到港口并做一个GET或HEAD:

telnet localhost 1900

然后输入HEAD并按Enter键。有时,返回的数据显示的内容类似于服务器名称或应用程序名称。


1
投票

只需检查侧边栏中有两个vs2008运行实例.. :)


1
投票

对于webforms网站:

  1. 从解决方案中删除项目。
  2. 编辑%userprofile%\ Documents \ IISExpress \ config \ applicationhost.config并删除问题端口的部分。
  3. 将项目添加回解决方案。
© www.soinside.com 2019 - 2024. All rights reserved.