aspnet5 vNext (rc1) iis 8 - неверный шлюз 502.3

Я понимаю, что подобные сообщения существуют, я читал/перечитывал, и у меня все еще есть проблемы. Большинство из них старые или не имеют прямого отношения, поэтому я решил повторно опубликовать текущий пример.

Попытка запустить базовый сайт в IIS 8.5+ на win server 2012 R2. На данный момент я застрял на "502.3 - Bad Gateway" (код ошибки 80070002, модуль httpPlatformHandler, уведомление executeRequestHandler, обработчик httpplatformhandler)

Соответствующая информация:

  • dnx 1.0.0-rc1-final clr (x64)
  • IIS - установлен/проверен HttpPlatformHandler 1.2 установлен (v1.2.1959)
  • IIS — настройка пула/сайта «без управляемого кода»
  • On the server itself I can get the site to show up if i run the "kestrel.cmd" (generated via dnu publish) directly, from the command line and navigate to the site.
    • Project.json:
{
  "version": "1.0.0-*",
  "dependencies": {
    "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final",
    "Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final",
    "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final"
  },
  "commands": {
    "kestrel": "Microsoft.AspNet.Server.Kestrel"
  },
  "frameworks": {
    "dnx451": {}
  },
  "publishExclude": [
    "node_modules",
    "bower_components",
    "**.xproj",
    "**.user",
    "**.vspscc"
  ],
  "exclude": [
    "www",
    "node_modules",
    "bower_components"
  ],
  "scripts": {
    "prepublish": [
      "npm install",
      "bower install"
    ]
  }
}
  • Web.config, сгенерированный после публикации dnu:
<configuration>
  <system.webServer>
    <handlers>
      <add name="httpplatformhandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
    </handlers>
    <httpPlatform processPath="approot\kestrel.cmd" arguments="" stdoutLogEnabled="true" stdoutLogFile="logs\stdout.log" forwardWindowsAuthToken="false" startupTimeLimit="3600"></httpPlatform>
  </system.webServer>
</configuration>

Ваша помощь очень ценится.


person jd314159    schedule 04.12.2015    source источник
comment
Вы скопировали папки wwwroot и approot в папку своего веб-сайта на IIS? Вы должны скопировать обе папки с их содержимым, а не содержимым wwwroot   -  person Miguel Moura    schedule 05.12.2015
comment
Вы размещаете сайт в виртуальном каталоге?   -  person Miguel Moura    schedule 05.12.2015
comment
как настроен ваш сайт IIS? по умолчанию у вас должно быть две папки: wwwroot и approot. Physical Path в IIS должен указывать на каталог wwwroot, который содержит web.config. В этом случае processPath в httpPlatform должно быть ..\approot\kestrel.cmd.   -  person qbik    schedule 07.12.2015
comment
Я изменил несколько вещей и, наконец, заставил его работать. Не уверен, какой из них был билетом, но, вероятно, все в комбо. У меня были жестко запрограммированные порты в моем коде/json, которые я удалил (например, команда kestrel...). Одна из моих команд по умолчанию (например, веб), которая генерируется при публикации, использовала WebListener. Вместо этого я удалил это в пользу пустельги. Первоначально я скопировал все из wwwroot в корневой веб-каталог и соответствующим образом изменил сгенерированный файл web.config. Вместо этого я оставил файлы wwwroot там, где они были, и просто изменил физический каталог в IIS. Большое спасибо за помощь.   -  person jd314159    schedule 07.12.2015
comment
Я надеюсь, что мой комментарий к этой теме GitHub поможет:github.com/aspnet/Hosting/ вопросы/466#issuecomment-168372853   -  person Jijie Chen    schedule 02.01.2016
comment
Я голосую за то, чтобы закрыть этот вопрос как проблему, которую больше нельзя воспроизвести. Был выпущен ASP.NET Core 1.0, и теперь процесс публикации отличается. См. docs.asp.net/en/latest/publishing/< /а>   -  person Set    schedule 10.08.2016


Ответы (1)


У меня возникла та же проблема - iis 8 - плохой шлюз 502.3.

Я перешел к включению или отключению функций Windows и включил IIS.

Я очистил и восстановил решение, и оно работало как шарм.

Я надеюсь, что это поможет и вам.

person Abhay Shiro    schedule 05.09.2016