Развернуть основной проект.net на Windows Server 2012 r2

Я развернул свой основной проект.Net на Windows Server 2012 R2 64bit, и это произошло:

Ошибка HTTP 502.5 - сбой процесса в соответствии с руководством Microsoft, они сказали, что это из-за конфликтов платформы с RID.

( https://docs.microsoft.com/en-us/aspnet/core/publishing/iis?tabs=aspnetcore2x)

Я уже прошел каждый шаг в этом руководстве, но не могу это исправить. Так кто-нибудь знает, как это исправить? Я был бы признателен, если бы вы могли. Спасибо.

Примечание: я уже дал полное разрешение на доступ к папке публикации, а также установил ASPNetCoreModule v2.0, net core sdk 2.0. Моя версия IIS - 8.5.

Вот мой.csproj:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>
    <RootNamespace>_MyAppAPI</RootNamespace>
    <AssemblyName>_MyAppAPI</AssemblyName>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
    <DocumentationFile></DocumentationFile>
  </PropertyGroup>

  <ItemGroup>
    <Content Remove="wwwroot\swagger\authen\basic-auth.js" />
    <Content Remove="wwwroot\swagger\ui\custome.css" />
  </ItemGroup>

  <ItemGroup>
    <Folder Include="Middleware\" />
    <Folder Include="Logs\" />
    <Folder Include="Models\appapi\" />
    <Folder Include="wwwroot\lib\" />
    <Folder Include="wwwroot\logs\" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.0.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.0.0" />
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.0.0" />
    <PackageReference Include="Serilog.Extensions.Logging.File" Version="1.1.0" />
    <PackageReference Include="Swashbuckle.AspNetCore" Version="1.0.0" />
  </ItemGroup>

  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0" />
  </ItemGroup>

  <ItemGroup>
    <EmbeddedResource Include="wwwroot\swagger\authen\basic-auth.js" />
    <EmbeddedResource Include="wwwroot\swagger\ui\custome.css" />
  </ItemGroup>

</Project>

И web.config после сборки:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="dotnet" arguments=".\_MyAppAPI.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
  </system.webServer>
</configuration>
<!--ProjectGuid: 2510f4bb-368b-4ab2-96e1-5d06b14d677e-->

Я столкнулся с этим: IIS не может запустить сайт ASP.NET Core - ошибка HTTP 502.5 Кажется, именно моя проблема. Но я не могу найти файл.exe нигде.:(

2 ответа

Кто-то может получить помощь от следующих шагов, которые я сделал.

Убедитесь (при размещении основных приложений.net на сервере Windows):

  1. Включить IIS
  2. установить.net core SDK - соответствующий пакет (2.0/2.1/ и т. д.)
  3. установить.net core runtime - соответствующий пакет (2.0/2.1/etc)
  4. установить.net core windows server hosting - соответствующий пакет (2.0/2.1/etc)
  5. установить распространяемый файл C++, соответствующий версии Visual Studio
  6. создать папку в inetpub / wwwroot /
  7. вставьте ваши опубликованные файлы в эту папку
  8. добавьте приложение на вашем веб-сайте по умолчанию в IIS и укажите псевдоним и физический путь.

Это оно. Вы можете просматривать свое приложение, используя IP-адрес сервера / псевдоним вашего проекта http://192.168.100.10/samplesite

Если возникла та же проблема, сначала включите вход в web.config и измените на:

stdoutLogEnabled="true" 

и убедитесь, что вы создали папку "logs" в корневой папке вашего опубликованного приложения. Перезапустите сайт IIS (ваш веб) и проверьте логи, они скажут вам, что не так.

Просто что-то для двойной проверки, вы установили документ по умолчанию?

Кроме того, в IIS вам может потребоваться переключить конвейер пула приложений для этого развертывания с интегрированного на классический и с версии.NET CLR на 2.0, если вы работаете с проектом.net 2.0.

В зависимости от используемой версии.net.

Привет ! Предварительные требования для.NET Core в Windows:

Для Windows 8.1 и более ранних версий или Windows Server 2012 R2 и более ранних версий:

Убедитесь, что ваша установка Windows обновлена ​​и включает в себя KB2999226, который можно установить через Центр обновления Windows. Если это обновление не установлено, при запуске приложения.NET Core вы увидите следующую ошибку: Программа не может запуститься, потому что api-ms-win-crt-runtime-l1-1-0.dll отсутствует на вашем компьютере. Попробуйте переустановить программу, чтобы решить эту проблему.

подробнее:https://docs.microsoft.com/pt-br/dotnet/core/windows-prerequisites?tabs=netcore30

Другие вопросы по тегам