在根目录的子文件夹中发布aspnetcore Web API时出现IIS 502.5错误

时间:2018-09-16 12:30:22

标签: iis azure-devops asp.net-core-webapi octopus-deploy

我有两个完全独立的应用程序:

  1. Angular 6应用程序
  2. AspNetCore Web Api

我尝试在IIS的www.xxx.com(D:ABCPub\wwwroot)根目录中发布AspNetCore Web应用程序而没有任何问题,并且我的Web api看起来很吸引人,但是问题是当我尝试放置已发布的文件时在www.xxx.com/mywebapi(D:ABCPub\wwwroot\mywebapi)中,出现以下错误: enter image description here 鉴于当前我的根D:ABCPub\wwwroot完全是空的,除了包含所有已发布文件的文件夹mywebapi

下面是我的web.config(D:ABCPub\wwwroot\mywebapi\webconfig)文件:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath=".\MyProject.Service.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
    </system.webServer>
  </location>
</configuration>
<!--ProjectGuid: AD1729B0-5EEA-46C7-B21F-349377540A21-->

我认为我在这里犯了一些愚蠢的错误,但无法得到它,任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

AspNetCoreModule通过在应用程序根目录中找到的web.config文件进行配置,该文件指向用于启动.NET Core应用程序的启动命令(dotnet)和参数(您的应用程序的主dll)。 web.config文件中的配置将模块指向应用程序的根文件夹和需要启动的启动DLL。请参见here

尝试如下所示在web.config中添加arguments =“。\ ABCPub.dll”

<aspNetCore processPath="dotnet" arguments=".\ABCPub.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />