«Ошибка HTTP 502.5 - сбой процесса» для приложения dotnet core 2.1 - PullRequest
0 голосов
/ 01 июня 2019

Из журнала ошибок: - Необработанное исключение: System.IO.FileNotFoundException: не удалось загрузить файл или сборку 'System.Runtime, версия = 4.2.1.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a' или одна из ее зависимостей. Система не может найти указанный файл.

Как я понимаю, мне нужно внести изменения в app.config для соответствия версиям, но я не могу найти app.config.

Мой web.config (размещение всего файла в случае обнаружения ошибки)


<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <modules>

      <!-- Remove WebDAV module so that we can make DELETE requests -->
      <remove name="WebDAVModule" />
    </modules>
    <handlers>
      <!-- Remove WebDAV module so that we can make DELETE requests -->
      <remove name="WebDAV" />
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <!-- When deploying on Azure, make sure that "dotnet" is installed and the path to it is registered in the PATH environment variable or specify the full path to it -->
    <aspNetCore requestTimeout="23:00:00" processPath="D:\******ini_nc\Presentation\Nop.Web\bin\Release\netcoreapp2.1\Nop.Core.dll" arguments="dotnet" forwardWindowsAuthToken="false" stdoutLogEnabled="True" stdoutLogFile=".\logs\stdout" startupTimeLimit="3600">
      <environmentVariables />
    </aspNetCore>
    <httpProtocol>
      <customHeaders>
        <remove name="X-Powered-By" />
      </customHeaders>
    </httpProtocol>
        <directoryBrowse enabled="true" />
  </system.webServer>
    <system.web>
        <identity impersonate="true" />
    </system.web>

</configuration>

1 Ответ

0 голосов
/ 01 июня 2019

Я бы не рекомендовал вносить изменения в файлы, такие как web.config, которые автоматически генерируются при публикации. Вот небольшой пример того, как web.config .net framework заменяется на .net core

  • Конфигурация уровня проекта (например, .net core или c # version) может быть установлена ​​из файла .csproj
  • Конфигурации, связанные с запуском через Интернет (например, связывание вашего IConfiguration с пользовательским источником), можно настроить из программы. Ccs
  • Конфигурации связующего программного обеспечения и приложений (например, отображение строки соединения с БД) можно настроить из класса запуска cs

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

Понижение версии приложения

Имейте в виду, это означает, что вы потеряете код, зависящий от версии. Это не рекомендуется, если у вас уже есть много кода, который может зависеть от версии. Это можно сделать, обновив файл .csprog. В отличие от .net Framework. Обновление этого файла в ядре .net считается чистым и безопасным.

** автономная публикация **

Эта опция предназначена для работы в системах без установленного ядра .net. Он работает путем создания опубликованных файлов, которые содержат все файлы, связанные с временем выполнения ядра .net, в огромной папке публикации. Так что имейте в виду, что папка публикации будет огромной. Посмотрите на это для получения дополнительной информации https://docs.microsoft.com/en-us/dotnet/core/deploying/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...