0

我在尝试使用 Visual Studio Professional 2015 启动 IIS Express 以在 Windows 10 上运行 ASP.NET 5 MVC 6 Web 应用程序 - DNX RC1(更新 2)时遇到以下问题:

返回错误:

HTTP 错误 502.3 - 网关错误
指定的 CGI 应用程序遇到错误,服务器终止了进程。

最可能的原因:
- CGI 应用程序没有返回一组有效的 HTTP 错误。
- 由于父网关中的错误,充当代理或网关的服务器无法处理请求。

详细错误信息:
- 模块:httpPlatformHandler
- 通知:ExecuteRequestHandler
- 处理程序:httpPlatformHandler
- 错误代码:0x80072ee2

奇怪的是,我在不同的操作系统(Windows 7)和 IDE(Visual Studio Community 2015)中启动了同一个 Web 应用程序。对于这种情况,我没有任何问题,并且 Web 应用程序可以正常运行。而且我确保在两个操作系统(6.0.0-rc1-final)上将相同的 DNX 配置为活动状态。唯一不同的是框架架构(Windows 7 =[x64] / Windows 10 =[x86])。

下面我还提供了相关的配置文件来补充调查结果:

1.项目.json

{
  "version": "1.0.0-*",
  "compilationOptions": {
    "emitEntryPoint": true
  },

  "dependencies": {
    "Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final",
    "Microsoft.AspNet.Mvc": "6.0.0-rc1-final",
    "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final",
    "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final",
    "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final",
    "EntityFramework.Core": "7.0.0-rc1-final",
    "EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final",
    "EntityFramework.Commands": "7.0.0-rc1-final",
    "Microsoft.Extensions.Logging.Debug": "1.0.0-rc1-final",
    "Microsoft.Extensions.CodeGenerators.Mvc": "1.0.0-rc1-final",
    "AutoMapper":  "4.2.1" 
  },

  "commands": {
    "web": "Microsoft.AspNet.Server.Kestrel",
    "ef": "EntityFramework.Commands"
  },

  "frameworks": {
    "dnx451": {
      "dependencies": {
        "AutoMapper": "4.2.1",
        "System.Net.Http": "4.0.1-rc2-24027"
      },
      "frameworkAssemblies": {
        "System.Data.Entity": "4.0.0.0"
      }
    },
    "dnxcore50": {
      "dependencies": {
        "System.Net.Http": "4.0.1-beta-23516"
      }
    }
  },

  "exclude": [
    "wwwroot",
    "node_modules"
  ],
  "publishExclude": [
    "**.user",
    "**.vspscc"
  ]
}

2. web.config (wwwroot)

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
    </handlers>
    <httpPlatform processPath="%DNX_PATH%" arguments="%DNX_ARGS%" forwardWindowsAuthToken="false" startupTimeLimit="3600" />
  </system.webServer>
</configuration>

3. 全局.json

{
  "sdk": {
    "version": "1.0.0-rc1-update2"
  }
}

最后,可能有助于找到错误的最后一个主题:
- 我不太确定 httpPlatformHandler 是否安装正确。
我在哪里可以找到它或确保它在哪里?
- 我在 IIS Local 上托管了其他 Web 项目,带有虚拟目录和分配的池。考虑到 IIS Express 的目标是端口 8000,这会如何影响端口的可用性?(应用网址:http://localhost:8000/

如果您需要有关此问题的其他信息,请告诉我。

提前致谢!

凯伦·G。

4

0 回答 0