我在visual studio 2012中有asp.net web应用程序项目 . 当我想启动它时,我有以下错误:
Unable to launch the IIS Express Web server: Port"4012" is in use
这个问题来自于什么 . 我怎么解决它?
从命令提示符运行“netstat -b”以查看使用端口4012的应用程序 . 如果您终止该进程,IIS Express将能够使用端口4012启动 .
来自MSDN库
运行文件系统网站时,Visual Studio无法保证您指定的端口可用 . 如果在运行页面时正在使用该端口,则Visual Studio将显示错误消息 .
要更改IIS Express用于运行程序的端口,您应该按照本文在MSDN上概述的过程进行操作
How to: Specify a Port for the Development Server
简而言之,我们需要编辑文件 %systemdrive%:\Users\<username>\Documents\IISExpress\config 并更改此文件中的绑定信息并更改IIS Express的其他配置 .
%systemdrive%:\Users\<username>\Documents\IISExpress\config
由于这不是解决问题的简单方法,我建议关闭尝试在您的开发计算机上使用该端口访问的应用程序 . 寻找Microsoft的TCPView等特定工具,这些工具可以帮助发现 grab 您端口的应用程序 . 通常它只是浏览器
我在visual studio 2012中遇到了类似的问题:
ERROR :“无法启动IIS Express Web服务器 .
无法为网站“MySite”应用程序“/”注册URL http:// localhost:1030 / . 错误说明:进程无法使用文件,因为它正由另一个进程使用 . (0x85968574)“
REASON :实际上这个端口号是在运行时动态生成的 . 它可以保证可用 . 如果被其他一些流程项目收购,就不会运行 . 所以我们需要尝试另一个端口 .
SOLUTION :我在互联网上找到了各种解决方案,但问题仍未解决 . 最后我尝试了以下解决方案
右键单击解决方案资源管理器中的项目 - >属性
单击Web(在LHS上) .
查看本地IIS Web服务器(默认选择无线电btn) .
更改项目Url的端口号,例如:http:// localhost:1030 /到http:// localhost:45896 /(可能高于1024)
保存更改并运行应用程序 .
这样可以自动更改IIS配置文件和所需位置,因此我们无需显式更改任何代码 . 这对我有用,希望对你也有用 .
杀了 IIS Express Worker Process 为我解决了这个问题;我试图调试Visual Studio 2015的两个并发实例并在两个Web解决方案之间切换时遇到此问题 .
如果这是一个持续存在的问题,那么Kedar修改解决方案的答案会更好,但在紧要关头,对于代码审查等,我更喜欢这个 .
一种解决方案是删除或清除浏览器中的历史记录 . 然后,重新启动Visual Studio并重新运行您的应用程序 .
如果此解决方案不起作用,则您需要更改开发服务器(IIS Express)的端口号 .
我希望它对你有所帮助 .
如果这种情况是突然的(一切正常,但突然显示错误 Unable to launch the IIS Express Web server ),通常对我有效的解决方案就是:
终止IISExpress进程
更重要的是, close all browsers processes (Firefox,Chrome,Chrome开发工具,IE等)
像魅力一样工作:)如果没有,尝试从这个线程不同的解决方案 .
PS . 我发布它作为一个答案,所以它很容易找到,虽然有人在评论的某处写了它 .
从配置文件中删除多余的绑定 .
以管理员身份运行命令提示符并键入 .
1 . netsh http显示urlacl
您将看到已使用的网址列表,请确保您当前正在尝试使用的网址列在此列表中 . 在下一步中,您必须删除此预订 .
2 . netsh http delete urlacl url = /您在上面列表中列出的完整网址/
确认后,重新启动IIS
就我而言,我必须做两件事:
一个 . 从此文件中删除虚拟目录:
C:\Users\<user-name>\Documents\IISExpress\config\applicationhost.config
湾从以下位置运行程序TCPView:http://technet.microsoft.com/en-us/sysinternals/bb897437查找正在使用您的端口的进程,以及"End Process" .
在此之后,在Visual Studio中,打开Web应用程序项目属性,选择Web选项卡,单击“创建虚拟目录”按钮以重新创建虚拟目录 . 在调试模式下运行Web应用程序 .
只需重新启动计算机就可以解决这个问题 .
在与Visual Studio同时运行Fiddler时,我也遇到过此错误 . 退出提琴手和重新运行应用程序为我做了伎俩 .
请尝试以下步骤:
在VS2013中打开调试>网站属性 .
选择"Web"选项卡 .
在"Servers"下我发现"Override application root URL"未经检查 . 我查了一下并保存了 .
我有一个完全相同的问题,OP说“这个问题来自于什么 . ”
我只是重新启动我的机器,它再次工作 . 重新启动IIS Express无法正常工作 .
只需转到taskmanager - > Process - > iisexpress - >右键单击 - >结束进程树 - >然后您可以构建并运行您的应用程序
通过以下步骤解决了该问题: - 项目 - >属性 - > Web - 在服务器下选择本地IIS . - 保存设置并再次浏览
在web.csproj中更改端口号
<DevelopmentServerPort>56048</DevelopmentServerPort>
导航到IIS express
cd“C:\ Program Files(x86)\ IIS Express \”运行此appcmd.exe列表站点/ xml | appcmd删除网站/
此外,清除 %temp% 中的临时文件并注销,或重新启动
%temp%
这将删除所有网站,享受!
另一个选项是从本地解决方案文件夹中删除 applicationhost.config .
applicationhost.config
Visual Studio还将此存储在解决方案文件夹根目录中名为 .vs\config 的文件夹中 .
.vs\config
删除或编辑 applicationhost.config 帮我解决了这个问题
请删除您的项目 .vs 文件夹和 applicationhost.config 文件,然后运行您的代码 .
.vs
比上述任何答案更有可能:删除IISExpress文件夹,如SO article中所述 .
在我的情况下,我尝试了我在网上发现的每一篇文章,没有任何作用,我做的最后一件事是更改项目右键单击/使用Visual Studio Web服务器的选项,现在一切正常...
尝试关闭Visual Studio并使用“以管理员身份运行”选项再次打开它 .
21 回答
从命令提示符运行“netstat -b”以查看使用端口4012的应用程序 . 如果您终止该进程,IIS Express将能够使用端口4012启动 .
来自MSDN库
要更改IIS Express用于运行程序的端口,您应该按照本文在MSDN上概述的过程进行操作
How to: Specify a Port for the Development Server
简而言之,我们需要编辑文件
%systemdrive%:\Users\<username>\Documents\IISExpress\config
并更改此文件中的绑定信息并更改IIS Express的其他配置 .由于这不是解决问题的简单方法,我建议关闭尝试在您的开发计算机上使用该端口访问的应用程序 . 寻找Microsoft的TCPView等特定工具,这些工具可以帮助发现 grab 您端口的应用程序 . 通常它只是浏览器
我在visual studio 2012中遇到了类似的问题:
ERROR :“无法启动IIS Express Web服务器 .
无法为网站“MySite”应用程序“/”注册URL http:// localhost:1030 / . 错误说明:进程无法使用文件,因为它正由另一个进程使用 . (0x85968574)“
REASON :实际上这个端口号是在运行时动态生成的 . 它可以保证可用 . 如果被其他一些流程项目收购,就不会运行 . 所以我们需要尝试另一个端口 .
SOLUTION :我在互联网上找到了各种解决方案,但问题仍未解决 . 最后我尝试了以下解决方案
右键单击解决方案资源管理器中的项目 - >属性
单击Web(在LHS上) .
查看本地IIS Web服务器(默认选择无线电btn) .
更改项目Url的端口号,例如:http:// localhost:1030 /到http:// localhost:45896 /(可能高于1024)
保存更改并运行应用程序 .
这样可以自动更改IIS配置文件和所需位置,因此我们无需显式更改任何代码 . 这对我有用,希望对你也有用 .
杀了 IIS Express Worker Process 为我解决了这个问题;我试图调试Visual Studio 2015的两个并发实例并在两个Web解决方案之间切换时遇到此问题 .
如果这是一个持续存在的问题,那么Kedar修改解决方案的答案会更好,但在紧要关头,对于代码审查等,我更喜欢这个 .
一种解决方案是删除或清除浏览器中的历史记录 . 然后,重新启动Visual Studio并重新运行您的应用程序 .
如果此解决方案不起作用,则您需要更改开发服务器(IIS Express)的端口号 .
我希望它对你有所帮助 .
如果这种情况是突然的(一切正常,但突然显示错误 Unable to launch the IIS Express Web server ),通常对我有效的解决方案就是:
终止IISExpress进程
更重要的是, close all browsers processes (Firefox,Chrome,Chrome开发工具,IE等)
像魅力一样工作:)如果没有,尝试从这个线程不同的解决方案 .
PS . 我发布它作为一个答案,所以它很容易找到,虽然有人在评论的某处写了它 .
从配置文件中删除多余的绑定 .
以管理员身份运行命令提示符并键入 .
1 . netsh http显示urlacl
您将看到已使用的网址列表,请确保您当前正在尝试使用的网址列在此列表中 . 在下一步中,您必须删除此预订 .
2 . netsh http delete urlacl url = /您在上面列表中列出的完整网址/
确认后,重新启动IIS
就我而言,我必须做两件事:
一个 . 从此文件中删除虚拟目录:
湾从以下位置运行程序TCPView:http://technet.microsoft.com/en-us/sysinternals/bb897437查找正在使用您的端口的进程,以及"End Process" .
在此之后,在Visual Studio中,打开Web应用程序项目属性,选择Web选项卡,单击“创建虚拟目录”按钮以重新创建虚拟目录 . 在调试模式下运行Web应用程序 .
只需重新启动计算机就可以解决这个问题 .
在与Visual Studio同时运行Fiddler时,我也遇到过此错误 . 退出提琴手和重新运行应用程序为我做了伎俩 .
请尝试以下步骤:
在VS2013中打开调试>网站属性 .
选择"Web"选项卡 .
在"Servers"下我发现"Override application root URL"未经检查 . 我查了一下并保存了 .
我有一个完全相同的问题,OP说“这个问题来自于什么 . ”
我只是重新启动我的机器,它再次工作 . 重新启动IIS Express无法正常工作 .
通过以下步骤解决了该问题: - 项目 - >属性 - > Web - 在服务器下选择本地IIS . - 保存设置并再次浏览
在web.csproj中更改端口号
导航到IIS express
此外,清除
%temp%
中的临时文件并注销,或重新启动这将删除所有网站,享受!
另一个选项是从本地解决方案文件夹中删除
applicationhost.config
.Visual Studio还将此存储在解决方案文件夹根目录中名为
.vs\config
的文件夹中 .删除或编辑
applicationhost.config
帮我解决了这个问题请删除您的项目
.vs
文件夹和applicationhost.config
文件,然后运行您的代码 .比上述任何答案更有可能:删除IISExpress文件夹,如SO article中所述 .
在我的情况下,我尝试了我在网上发现的每一篇文章,没有任何作用,我做的最后一件事是更改项目右键单击/使用Visual Studio Web服务器的选项,现在一切正常...
尝试关闭Visual Studio并使用“以管理员身份运行”选项再次打开它 .