启动ASP.NET 5 RC1应用程序时,IIS Express + HttpPlatformHandler崩溃

时间:2015-12-08 13:01:57

标签: .net asp.net-core iis-express

从ASP.NET 5 beta 7升级到RC1后,从Visual Studio中启动IIS Express中的Web应用程序的尝试以&#34结束;尝试确定托管您的DNX进程的进程ID时出错应用&#34 ;.

在Windows事件日志中,我可以看到以下错误:

  • 流程' 1828'未能启动。端口= 31115,错误代码=' -2147024891'。 (EventID 1000;总是会发生这种情况)
  • 警告:无法创建stdoutLogFile \?\ C:_temp_httpplatform-stdout.log_6072_2015128124832.log,ErrorCode = -2147024864。 (EventID 1004;有时只会发生这种情况)

HttpPlatformHandler Configuration中配置的日志文件确实已创建但完全为空,以及VS Output窗口。

如何诊断失败的原因?

相关版本是:

  • Visual Studio Enterprise 2015 Update 1
  • DNX SDK版本:1.0.0-rc1-update1
  • Windows 7 Enterprise SP1(64位)

来自web.config的相关部分:

<system.webServer>
  <handlers>
    <add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
  </handlers>
  <httpPlatform processPath="%DNX_PATH%" 
                arguments="%DNX_ARGS%" 
                stdoutLogEnabled="true" 
                stdoutLogFile="C:\_temp\_httpplatform-stdout.log"
                startupTimeLimit="3600" 
                forwardWindowsAuthToken="false" />
</system.webServer>

也许有趣的是,最初当我尝试运行从模板创建的全新ASP.NET 5 Web应用程序时,它起作用了。现在它也没有。

更新:尽管IIS Express启动时出错,但返回502.3 Bad Gateway错误

4 个答案:

答案 0 :(得分:1)

所以,一位同事遇到了类似的问题。

我最终检查了项目下的.vs \ config \ applicationhost.config文件。他的结果很糟糕&lt;网站及GT;部分。其中两个网站将https绑定到&#34; *:44300:localhost&#34;。我删除了一个(也将http绑定到80的那个),重新编号了网站,他的IIS Express现在可以工作了。

答案 1 :(得分:1)

我刚刚为我的网站解决了这个问题(“尝试确定托管您的应用程序的DNX进程的进程ID时出错”) - 同样的船,从Beta 7升级到RC1。我相信这些项目最初是在Beta 4或5中创建的。

事实证明,我的web.config中存在来自早期版本的ASP.Net beta的额外垃圾,这些垃圾正在破坏请求。

我删除了这些:

  <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
  <remove name="OPTIONSVerbHandler" />
  <remove name="TRACEVerbHandler" />
  <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />

网站开始在IIS Express中正常运行。如果这对您不起作用,您可以尝试创建一个新项目并查看它是否正常工作 - 比较web.config,startup和project.json文件,看看是否还需要进行任何其他更改。

答案 2 :(得分:0)

当我通过IIS Express启动项目时,我遇到了同样的问题。我收到“尝试确定托管您的应用程序的DNX进程的进程ID时出错”。我试过修复VS,重新安装IIS但没有任何效果。第二天早上我在asp toling known issues找到了解决方案。只需重新安装ASP.NET 5 RC1。

答案 3 :(得分:0)

我有同样的问题。

project.json文件中。我的代码是

"version": "1.0.0-rc1-update",

我将其更改为

"version": "1.0.0-rc1-update1",

因为在launchSettings.json文件中  我有"sdkVersion": "dnx-clr-win-x64.1.0.0-rc1-update1"

它必须与launchSettings.json文件中的sdk版本匹配。