无法启动IIS Express Web服务器

我有一个ASP。NET MVC 4解决方案。当我尝试使用Visual Studio 2012打开它时,我得到以下错误:

Microsoft Visual Studio

配置Web https://localhost:NET 4.5失败。你必须 手动配置此站点的ASP。NET 4.5才能使站点 正确地运行。无法找到服务器https://localhost:44300/上 本地机器。确保已配置本地IIS服务器

.使用实例

尽管解打开了。此外,当我试图从调试菜单运行它时,我得到以下错误:

无法启动IIS Express Web服务器。

指定的起始URL无效。https://localhost:44300/

我无法调试代码。如何摆脱这些错误和调试/运行网站从VS 2012?

545409 次浏览

我也有同样的问题 原因是IIS配置文件坏了

尝试删除自动创建的IISExpress文件夹,该文件夹通常位于%userprofile%/Documents,例如C:\Users\[you]\Documents\IISExpress

别担心,一旦你再次运行你的解决方案,VS应该再次创建它——这次是正确的。


EDIT:删除文件夹的命令行:

rmdir /s /q "%userprofile%\Documents\IISExpress"

@roblll说对了。但对于那些不想挖掘答案的人来说,这就是:

  1. 关闭Visual Studio(可能不是必需的,但也无妨)。
  2. 导航到Documents文件夹。这是我的IISExpress配置目录所在的位置。
  3. 在config文件夹中,有一个名为应用程序主机的文件。开放。
  4. 搜索项目的名称。它应该是由Visual Studio在你之前的尝试中失败时添加进去的。
  5. 请注意,HTTP与您打算用于https的端口有绑定。

    //Change this:
    <binding protocol="http" bindingInformation="*:44300:localhost" />
    
    
    //to this:
    <binding protocol="https" bindingInformation="*:44300:localhost" />
    

Keep in mind, Visual Studio might have supplied different ports than you expected. Just make sure that the ports in the binding correspond to what's in the Web tab of your project's properties.

http://www.hanselman.com/blog/WorkingWithSSLAtDevelopmentTimeIsEasierWithIISExpress.aspx

我在VS2012中运行我的解决方案时遇到了类似的问题:

无法启动IIS Express Web服务器。
指定的起始URL无效。https://localhost: 44301 / < / p >

我将不正确的项目选择为启动项目。我将云项目创建为Startup(右键单击项目>设置为Startup Project),一切都开始正常工作。

我有同样的问题,在我的情况下,我只是清理,然后重建我的解决方案,它为我工作

在我的情况下,我允许外部请求到我的IIS Express网站,并配置windows防火墙允许iisexpress.exe,我不能从Visual Studio 2013中启动它。我仍然可以用命令行启动它,它可以很好地服务本地和外部请求。

C:\Program Files (x86)\IIS Express>iisexpress /site:MyWebSiteName

我试着创建一个防火墙规则来允许我的端口,在VS工作之后。

我有同样的问题,然后我打开任务管理器->进程,然后杀死iisexpress.exe进程。之后,我尝试运行应用程序,并能够成功地运行它

我也有同样的问题,原因是在属性-> Web下设置了“覆盖应用程序根URL”标志 在我删除标志后,IIS Express启动正常,使用定义的端口

我也遇到了同样的问题,但对我有效的解决方法是不同的。

  1. 在VS2013中打开调试> {YourWebsiteName}属性
  2. 选择“Web”选项卡。
  3. 在“服务器”下,我发现“覆盖应用程序根URL”被选中。我取消勾选并保存。

这就是我所需要的一切,让它运行起来。

Jason的Shavers系列文章http://jasonrshaver.com/?tag=/Client+Certificates详细解释了如何设置你的应用程序主机。配置站点入口,以允许应用程序运行在SSL或标准http。

他建议的一件事是为网站添加两个绑定条目。这就是我所做的。

            <bindings>
<binding protocol="http" bindingInformation="*:59945:localhost" />
<binding protocol="https" bindingInformation="*:44300:localhost"/>
</bindings>

他还建议更改其他设置。我的三台机器中有两台都能用。每次我被告知在应用程序主机中手动配置站点时,通常都与绑定有关。(例如多个web应用使用相同端口)

我也有同样的问题,感谢@Jacob提供的信息。

原因是-在配置文件applicationhost中错误的项目条目位于

C:\Users\(yourusername)\Documents\IISExpress\config
  1. 关闭所有Visual Studio解决方案。
  2. 重命名IISExpress文件夹为一些IISExpress- copy(而不是删除你可以有一个副本)
  3. 现在再次打开VS并构建/调试项目,现在你会看到IISExpress文件夹再次为你创建了正确的配置。

在我的情况下,我去调试>项目属性> Web(在visual studio),然后我在服务器部分将IIS Express更改为本地IIS

我们的网站也遇到了同样的问题。我们能够在Visual Studio中解决这些问题。我们使用的是2012终极版。

我们看到的潜在问题是,由于某种原因,在启用SSL后,VS为标准url和安全url分配了相同的端口。当我们从TFS中提取代码时,这个问题似乎出现了。

为了补救,我们采取了以下步骤:

  1. 右键单击项目并转到属性 -> 网络
  2. 使用本地IIS Web服务器部分的项目URL下,从URL中删除“s”并保存。(如。从https://44301转http://:44301。这将允许下一步工作)
  3. 在“解决方案资源管理器”中,选择“项目”并在“属性”窗口中(如果没有显示则按F4)将启用SSL < em > < / em >更改为,然后再返回真正的。它将生成一个与标准URL不同的新端口(在我的例子中,我的SSL是44301,标准是44305)
  4. 导航回属性-> Web,并将“s”添加回项目URL。
  5. F5,骑!

确保覆盖应用程序根URL的复选框未选中。

在安装Visual Studio 2013 Update 3后,我遇到了同样的问题。
VS 2013 can not load Microsoft.VisualStudio.TraceLogPackage.dll
Unable to launch the IIS Express Web server

我的问题通过以下步骤解决:

1. 修复Visual Studio 2013 Update 3
2. 以管理员身份启动Developer Command Prompt
3.输入devenv.exe /setup,然后按enter

对我来说唯一有效的解决方案是创建另一个测试项目。然后按照下面的步骤:

  1. 右键单击项目,进入属性-> Web

  2. 在“使用本地IIS Web服务器”部分的项目URL下,复制项目URL(http:// localhost:59002/)——这来自测试项目。

  3. 导航到给出此错误的项目。右键单击项目,进入属性-> Web。

  4. 将项目URL粘贴到Use Local IIS Web Server部分(从测试项目复制的URL)。关闭测试项目并保存。

  5. 删除测试项目并运行给出错误的项目。在那之后…

也许不是最好的方法,但这是我能让它工作的唯一方法。我收到这个错误消息后,我重新加载我的笔记本电脑(硬盘崩溃),并从他们所在的服务器上获得了我所有的项目。

我的问题被解决了:

  • 在控制面板(程序和功能)中,我发现所有与IIS相关的功能都未选中。我最终检查了所有这些并重新启动了我的系统。
  • 然后我以管理员的身份开始了我的VS 2013,仅此而已

请查看快照,我遇到了同样的错误,但下面的设置解决了它

  1. 选择当前页面为Start Action

  2. Servers选项中选择特定的端口,并输入端口26641,在虚拟路径中输入/

  3. NTLM选项应未选中

检查防病毒防火墙并允许访问visual studio到网络。 例如,在nod32中:

后置设置(f5) ->网络-个人防火墙-规则和区域

在“;zone and rule editor"点击“setup"并找到vs 201012或…并允许访问网络。

我也有同样的问题。我已经删除了C:/users/路径下的很多文件夹,以释放机器上的一些空间。在那之后,我开始得到这个错误。

我只是重新启动了我的机器,一切都很好。

我的问题需要三方面的解决方案:

  1. 删除Documents文件夹中的IISExpress文件夹。
  2. 通过右键单击并选择“设置为启动项目”,或者通过解决方案属性将web项目设置为启动项目。
  3. 设置启动URL,或设置为“当前页面”或“特定页面”。我的设置是“不要打开任何一页”。等待来自外部应用程序的请求”,我不得不将其更改为“特定页面”,我将其留空,这样它就会进入我的应用程序的主页,然后才能正常工作。

同样的问题,但是需要在管理模式中启动VS2013。

在禁用防火墙后,我能够毫无问题地运行它。

我今天碰到了这个错误。运行win8.1和vs2013。突然我的项目不能再运行了,我收到了“无法启动IIS快速Web服务器”的消息,没有进一步的信息。

过了一段时间,我发现IIS Express无法启动的所有项目都在运行。net 3.5。运行新版本的项目确实开始得很好。

我的解决方案是删除。net 3.5(从控制面板->打开/关闭窗口功能),重新启动窗口,然后再次添加。net 3.5。

在我的情况下,IIS Express应用程序主机。配置文件中几个元素的managedRuntimeVersion属性有一个拼写错误。这是发生在Visual Studio 2012和Visual Studio 2013。我只收到了邮件的第一部分,内容是:

无法启动IIS Express Web服务器。

它在事件日志中记录了一个错误,消息如下:

工作进程未能预加载. net Runtime版本v4.030319。

正确的运行时版本是v4.0.30319(注意第二个周期)。

我采取的纠正措施:

  1. 导航到C:\Users\ Documents\IISExpress\config
  2. 编辑applicationhost.config
  3. 查找配置部分
  4. 将任何引用“v4.030319”的内容更正为“v4.0.30319”

在我下次调试web应用程序时,Visual Studio成功启动了IIS Express。

在我的情况下,项目是在网络驱动器和删除IIS Express文件夹没有帮助,如在其他答案中所述。我的解决办法是复制项目到本地驱动器,它工作!

当我查看IIS Express注册表项时,我的问题最终解决了:

HKEY_CURRENT_USER\Software\Microsoft\IISExpress

我有一个入口CustomUserHome指向我的网站,这是造成严重破坏。

不需要删除C:\Users[you]\Documents\IISExpress目录下的整个IISExpress文件夹。

评论:

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

在applicationhost中。IISExpress文件夹下的config文件。

分享给未来的读者。手动创建虚拟目录对我来说是有效的。

  • 在解决方案资源管理器中选择项目
  • Alt + 输入
  • 转到网页部分
  • 单击“创建虚拟目录”

首先删除目录中存在的文件IISEXPRESS,然后开始调试。

如果这不能解决问题,请转到您的项目(Ctrl+Alt+l)。右键单击->属性->调试和检查“启用Windows身份验证”

我将在我的机器上为虚拟机设置互联网连接共享。我关闭了它,我能够在Visual Studio 2015中调试。然而,为了在重启后持续调试,我需要将互联网连接共享服务设置为手动启动,即使我的互联网连接都没有启用互联网连接共享

如果使用VS2015或以上版本

确保iisexpress进程没有运行。

确保没有其他进程正在使用所需的端口。你可以通过执行来实现

netstat -a -b

在控制台中(作为管理员,在开始菜单中键入cmd,右键单击并选择“以管理员身份运行”)。如果您看到状态为ESTABLISHED或LISTENING的条目,则意味着有其他进程正在使用该端口。您需要终止该进程或更改端口。

然后删除以下文件

<<path_to_solution_folder>>\.vs\config\applicationhost.config

注意.vs文件夹可能被隐藏

然后找到<<project-name>>.csproj.user文件,用文本编辑器(记事本)打开它 并且确保WebProjectProperties下的IISUrl被配置为<IISUrl>http://localhost:XXXXX/</IISUrl>,其中XXXXX是你想要的端口

在这样做并尝试启动应用程序后,你可能会得到

HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.

然后转到{项目属性}->Web并按“创建虚拟目录”;按钮

enter image description here

在我的情况下,我的applicationhost.config文件以某种方式缺少以下两行代码

<add name="rules-64-ISAPI-2.0" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
<add name="xoml-64-ISAPI-2.0" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />

一直在乱搞IISExpress和项目,试图让它在一个不同的URL上监听,而不是localhost,当返回时,我有这个错误,在遵循这里的所有答案后,没有一个工作。

最终注意到,在项目Porperties -> Web中,我在开始操作下检查了“开始URL”,但输入框是空的。将此更改为“当前页面”修复了我的问题。

其他的解决方法对我都不起作用。我禁用了“编辑-继续”功能,一切正常:)

我的解决方案是从IIS Express切换到本地IIS。 解决方案属性 请确保您的虚拟目录绑定到相同的端口

我最近遇到了这个问题,这是因为项目存储在网络驱动器上。由于IIS在本地作为NetworkService运行,它无法访问存储项目的网络共享。假设从网络共享打开项目违反最佳实践,我将项目复制到本地C:\ drive,然后项目按预期运行。

我也有同样的问题。我通过改变项目属性的端口号来解决这个问题。我把端口号50624改成了50625。

enter image description here

试试下面的步骤:

  1. 如@Yehuda shapiro所说,删除IISExpress文件夹
  2. 重新启动计算机
  3. 删除项目中的.vs文件夹

我也有这个问题,在关闭防火墙后,在以管理员身份打开,在再次检查所有设置是否正确后。

我的问题是独特的,我想在本地测试SSL,但也有通过局域网可用的服务。所以我改变了应用程序的URL使用本地IP aka。我的情况是192.168.1.10。

切换回本地主机可以解决这个问题,关闭SSL也一样,所以我发现本地SSL证书只适用于本地主机。

删除IISExpress文件夹内的内容,关闭和打开visual studio。然后再次运行。应该没问题。

或“修改端口号”

除了@Yehuda Shapira给出的答案,我必须做另一个更改,即删除.csproj。用户文件中绑定信息如

<IISUrl>http://localhost:54462/</IISUrl>

存储。删除文件关闭visual Studio,然后重新构建。

在你尝试其他任何方法之前,请先确保你能做到。重新启动visual studio(主要用于从文件中刷新内存驻留选项);重新启动系统(主要用于无效的文件锁定)。如果你的问题是暂时的或自我修复的,那就不需要改变任何事情。它为我工作与PC重启。此外,如果你在一个多用户的项目中工作,确保你有最新的可用版本-其他人可能在项目文件中错误地签入了一些无效的东西,你无缘无故地打乱了你的系统。如果这些都不起作用,那么你可能需要改变一些卡住、缺失或需要修改的设置-关于其他答案有很多命题。

在网上搜索了两个小时后,我发现我的解决方案如下步骤 -封闭式视觉工作室 -删除项目的。vs文件夹 -打开visual studio并重新运行项目

那是我的工作,祝你玩得愉快

VS2015

编辑. csprojr .user文件

插入以下xml标记(如果已经存在,请不要重复)

<UseIIS>True</UseIIS>
<AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>2870</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://localhost:2859</IISUrl>
<OverrideIISAppRootUrl>True</OverrideIISAppRootUrl>
<IISAppRootUrl>http://localhost:2859</IISAppRootUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl>http://localhost/app</CustomServerUrl>

在XML节点中插入以上标签:

<ProjectExtensions><VisualStudio><FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}"><WebProjectProperties>

我也有同样的问题。请遵循以下步骤:

1-在Documents\IISExpress\config中打开applicationhost文件,如果不存在,则添加以下代码

            <site name="solutionname" id="2">
<application path="/" applicationPool="solutionname">
<virtualDirectory path="/" physicalPath="physicaladdressofproject" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:xxxx:localhost" />
</bindings>
</site>

2-然后转到项目的根文件,删除使用不同版本的Visual Stdio对项目进行的所有更新

3-下一步进入[root]。vsconfig,删除applicationhost 它将被自动创建

4 .运行项目

这对我很管用。

我将提出一个解决这个问题的方法:

1.使用以下控制台命令删除\Documents\IISExpress文件夹:rmdir /s /q "%userprofile%\Documents\IISExpress"

  1. 删除applicationhost。config文件,它位于Visual Studio项目根文件夹的.vs\ config \文件夹中。

  2. 更改项目的网站随机URL:在Visual Studio中,右键单击解决方案资源管理器中的项目节点,然后选择属性;浏览Web面板,然后更改Project Url文本框值中的数字。

  3. 添加值为1的_CSRUN_DISABLE_WORKAROUNDS Environment System变量,如下面的截图所示(感谢Juan M. Elosegui报告了这个SO线程和图像):

enter image description here

好运!

这里介绍的方法对我都不起作用。最后的工作是在.csproj文件中将DevelopmentServerPort设置为0:

    <WebProjectProperties>
<UseIIS>True</UseIIS>
<AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>0</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://localhost:52973/</IISUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl>
</CustomServerUrl>
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
</WebProjectProperties>
我也有类似的问题-由于这个错误,VS无法加载特定的web项目。 这是帮助:

  • 在解决方案中编辑项目
  • 查找UseIISExpress和/或UseIIS 并确保它们不相互交叉

我的情况是这样的:

...
<UseIISExpress>True</UseIISExpress>
...
<UseIIS>True</UseIIS>
...

因此,我将其更改为:

...
<UseIISExpress>True</UseIISExpress>
...
<UseIIS>False</UseIIS>
...

然后就成功了。

重启电脑是我唯一能做的事。经典101 IT:)

我阅读了这里所有的答案,然后,正如Mihail Shishkov回答中提到的,跳转到项目属性> Web >服务器>创建虚拟目录。这句话的效果是让我得到了一个例外:

无法启动IIS Express Web服务器。 指定的起始URL无效。http://localhost:44300/ < / p >

在我的情况下,我添加了新的网站绑定applicationHost.config文件后删除绑定它工作正确。 applicationHost。config路径在你的项目根目录。vs(隐藏)文件夹

  1. 关闭Visual Studio的所有实例。
  2. 打开任务管理器。
  3. 结束所有活动的IIS进程。
  4. 重新启动Visual Studio。

在我的电脑上运行XAMPP的Apache服务器后,我也遇到了这个问题。为了运行它,我通过在管理员命令提示符上写入net stop http来终止8086端口上的所有进程。我认为杀死进程导致了这个问题。

对我来说,这个问题在完成以下步骤后就解决了;

  1. 关闭Visual Studio和SQL Management Studio。
  2. 转到Services并启动除SQL Server Agent (SQLEXPRESS)之外的所有SQL服务。
  3. C:\Users\<your pc name>\Documents删除IISExpress文件夹
  4. 重新启动电脑。(我在上面没有发现的新事情)
  5. 启动Visual Studio并运行程序。

对于dotnet核心中的2021解决方案,您可以通过在解决方案资源管理器中右键单击项目,并选择“编辑项目文件”来修复此错误。

在底部的Debug选项卡上,您可以直接配置所需的端口以及是否使用SSL。

enter image description here

这里的更改需要用Control+S保存。完成此操作后,您可以启动项目并确认它解决了您的问题,无需删除IISFolders或此处建议的任何其他内容。

确保以管理员身份运行VS !这将解决一切问题。比我晚。

在解决方案资源管理器中右键单击项目 enter image description here < / p >

tab Web并按创建虚拟目录

enter image description here