Приложение .NET Core, ориентированное на полную инфраструктуру - перестало работать в IIS - PullRequest
1 голос
/ 27 марта 2019

У нас есть приложение ASP.NET Core MVC, предназначенное для net461 из-за необходимости использования Entity Framework для Oracle.До недавнего времени это приложение работало нормально как на наших серверах DEV, так и на серверах контроля качества.

Мы развертываем его как автономное приложение, но у нас также есть среда выполнения .NET Core и хостинг ASP.NET Core IISпакет установлен на серверах.

Недавно у нас начались проблемы после развертывания, когда приложение не запускалось.В браузере мы получаем 502.5 Process Failure .На сервере единственная ошибка, которую мы можем найти, находится в журналах событий Windows: Application 'MACHINE/WEBROOT/APPHOST/DEFAULT WEB SITE/<appname>' with physical root 'D:\path\' created process with commandline 'D:\path\<appname>.exe ' but failed to listen on the given port '<randomport>'.

Различные сообщения и статьи SO, которые я обнаружил, говорят, что обычно это происходит из-за другой версии среды выполнения, установленной на сервере, по сравнению с. клиент.

  1. Это автономно, поэтому среда выполнения связана, поэтому я не уверен, что это проблема.

  2. Мы не изменили то, что установлено на наших компьютерах разработки ИЛИ на серверах, но попытались удалить и переустановить среду выполнения на серверах.

  3. , так как это предназначено для полной платформы net461 имеет ли значение версия .NET Core?Или имеет значение только версия .NET?

У нас есть люди, которые думают, что проблема заключается в получении порта для прослушивания.Я попытался добавить .UseUrls() в Program.cs и добавить в порты Kestrel в appSettings.json, но ничего не изменилось, и мы все еще получаем ту же ошибку.

Чтобы еще более запутать, наша текущая сборка работает нормальнона сервере QA, но не запускается в DEV.Иногда мы пытаемся опубликовать, и это работает в одной среде, но не в другой, а иногда это не удается в обеих.Мы выполняем те же шаги развертывания, и единственными отличиями являются файлы конфигурации.

Мы пробовали <PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest> и без.

Мы пробовали публикацию из VS и из dotnet publish.

Мы пытались net stop was /y net start w3svc.

Мы даже восстановили сервер до более ранней точки, прежде чем начались эти проблемы.

На данный момент мы не можем найтилюбой шаблон, когда / почему некоторые развертывания будут запущены, а некоторые потерпят неудачу.Есть ли кто-нибудь, кто может внести свой вклад в это?

1 Ответ

0 голосов
/ 27 марта 2019

При запуске приложения мы планируем некоторые вещи с помощью FluentScheduler.Вкл имел время начала / окончания, которое должно сбивать с толку библиотеку.Это заставляет его полностью зависать без исключения.Удаление / изменение установленного времени или проблемы!

...