HTTP Error 502.5 – Process Failure

本文介绍如何在Windows+IIS环境下部署Asp.Net Core应用程序,并解释了部署过程中的关键概念,如Kestrel服务器的角色及IIS作为反向代理的工作原理。

https://www.cnblogs.com/lookerblue/p/7101641.html

http://www.cnblogs.com/lookerblue/p/7102040.html

http://www.cnblogs.com/lookerblue/p/8877597.html

请安装:

AspNetCore.2.0.7.RuntimePackageStore_x64.exe

DotNetCore.1.0.4_1.1.1-WindowsHosting

dotnet-sdk-2.1.200-win-x64

dotnet-win-x64.1.1.1

















Windows + IIS 环境部署Asp.Net Core App


不少人第一次在IIS中部署Asp.Net Core App的人都会遇到问题,会发现原来的部署方式无法运行Asp.Net Core App程序。过去无论是原始的Asp程序还是后来的Asp.Net程序,在IIS中的部署方式都没太大变化,仅需指向程序目录,然后设定虚拟目录,最后做一些参数配置。Asp.Net Core App为了做到跨平台,自带了一个轻量级的Web Server - Kestrel,那么要在IIS中部署Asp.Net Core App,就必须有一种新的机制来协调IIS与Kestrel Server之间的数据传递。

1.  Asp.Net Core的部署模式

与传统的Asp.Net程序不同,Asp.Net Core App使用了Kestrel Server。Kestrel是一个跨平台的Web Server,与IIS一样负责请求的监听、接收和响应,但没有IIS丰富的管理功能,仍需要由IIS来处理一些前置工作。(当然你也可以使用Apache来做前置处理)

IIS负责把外部请求转发给后端的Asp.net Core App,充当“反向代理(reverse-proxy)”角色。

2.  理解反向代理

“反向”是指入站方向,“代理”可以理解为某种服务,这里是转发HTTP请求的服务。“反向代理”就是入站方向转发HTTP请求的服务。

和路由器原理一样,路由器除了让局域网能够访问internet,也可以通过设置NAT或端口映射,从internet访问内部的某台服务器,相当于把入站请求转发给指定电脑上,这与IIS的反向代理角色类似。代理服务器与路由器都是起到数据转发的作用,只不过代理服务器转发的是某类应用的数据,路由器转发的是数据包。

3.  部署环境

Asp.Net Core App部署需要操作系统满足:

  • Windows 7 或更新版本
  • Windows Server 2008 R2 或更新版本
4.  配置IIS

Windows Server上通过“添加角色和功能”,桌面Windows上通过“启用和关闭Windows功能”来安装和配置IIS。确保勾选Web服务和“IIS 管理控制台”:

Windows Server IIS 安装配置

桌面Windows IIS 安装配置

5.  安装.NET Core Windows Server Hosting程序集

安装.NET Core Windows Server Hosting程序集,让IIS具备反向代理功能。该程序集包含了.Net Core运行时(Runtime),.Net Core 类库(Library)和 Asp.Net Core Module。其中Asp.Net Core Module负责反向代理工作。

特别注意,按微软官方说法,如果是脱机安装,则需先手动安装Microsoft Visual C++ 2015 Redistributable。但实践证明即使在线安装很多时候也不会自动安装 Microsoft Visual C++ 2015 Redistributable,因此强烈建议手动安装Microsoft Visual C++ 2015 Redistributabl

另外,目前.NET Core版本升级很快,请下载最新版本的.NET Core Windows Server Hosting,确保服务器上的.Net Core版本不低于部署的Asp.Net Core App版本。

下载 Microsoft Visual C++ 2015 Redistributable

下载最新版本.NET Core Windows Server Hosting

安装完成重启系统或重启IIS服务即可。

6.  IIS中配置Asp.Net Core App

接下来的步骤与部署传统网站基本一致,但也有稍许不同,请留意。

1)  服务器中创建目录存放发布以后的App程序文件,确保App的web.config文件在网站根目录下。

2)  在网站根目录创建一个logs文件夹。如果你开启了某些日志服务,日志文件将记录在这里。当然也可以不记录日志,但初次部署对排错有帮助,建议创建。

    web.config 中开启 stdoutLogEnabled="true"

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

3)  在IIS管理器中添加网站。步骤与一般网站配置一致:

4) 配置应用程序池。在左侧导航栏选择“应用程序池”,选择指定程序池,右键菜单,选择“基本设置”,将.Net CLR版本设置为“无托管代码”。

7.  测试Asp.Net Core App

本例使用一个测试公网域名www.test.com,显然我们没有权限更改此域名在公网的解析记录,但我们可以更改此域名在本地的指向用于测试。使用记事本打开C:\Windows\System32\Drivers\etc\hosts文件,添加一条记录 “127.0.0.1      www.test.com”。之后我们在本地访问域名www.test.com时IP地址将解析为 127.0.0.1。使用浏览器打开www.test.com,我们会看到Asp.Net Core App已正常运行:

相关阅读:
Asp.Net Core App 部署故障示例 1
Asp.Net Core App 部署故障示例 2

"C:\Program Files\Java\jdk-21\bin\java.exe" -Dmaven.multiModuleProjectDirectory=D:\BaiduNetdiskDownload\苍穹外卖\资料\day01\后端初始工程\sky-take-out -Djansi.passthrough=true "-Dmaven.home=C:/Program Files/JetBrains/IntelliJ IDEA 2025.1.1.1/plugins/maven/lib/maven3" "-Dclassworlds.conf=C:\Program Files\JetBrains\IntelliJ IDEA 2025.1.1.1\plugins\maven\lib\maven3\bin\m2.conf" "-Dmaven.ext.class.path=C:\Program Files\JetBrains\IntelliJ IDEA 2025.1.1.1\plugins\maven\lib\maven-event-listener.jar" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2025.1.1.1\lib\idea_rt.jar=51884" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath "C:\Program Files\JetBrains\IntelliJ IDEA 2025.1.1.1\plugins\maven\lib\maven3\boot\plexus-classworlds-2.8.0.jar;C:\Program Files\JetBrains\IntelliJ IDEA 2025.1.1.1\plugins\maven\lib\maven3\boot\plexus-classworlds.license" org.codehaus.classworlds.Launcher -Didea.version=2025.1.1.1 compile [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [INFO] Reactor Build Order: [INFO] [INFO] sky-take-out [pom] [INFO] sky-common [jar] [INFO] sky-pojo [jar] [INFO] sky-server [jar] [INFO] [INFO] ------------------------< com.sky:sky-take-out >------------------------ [INFO] Building sky-take-out 1.0-SNAPSHOT [1/4] [INFO] from pom.xml [INFO] --------------------------------[ pom ]--------------------------------- [INFO] [INFO] -------------------------< com.sky:sky-common >------------------------- [INFO] Building sky-common 1.0-SNAPSHOT [2/4] [INFO] from sky-common\pom.xml [INFO] --------------------------------[ jar ]--------------------------------- Downloading from central: https://repo.maven.apache.org/maven2/org/springframework/spring-context/5.3.22/spring-context-5.3.22.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/springframework/spring-context/5.3.22/spring-context-5.3.22.jar (1.3 MB at 11 kB/s) [INFO] [INFO] --- resources:3.2.0:resources (default-resources) @ sky-common --- Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/3.1.0/maven-plugin-api-3.1.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/3.1.0/maven-plugin-api-3.1.0.jar (50 kB at 10.0 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/3.1.0/maven-artifact-3.1.0.jar Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/3.1.0/maven-core-3.1.0.jar Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/3.1.0/maven-settings-3.1.0.jar Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings-builder/3.1.0/maven-settings-builder-3.1.0.jar Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/3.1.0/maven-repository-metadata-3.1.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/3.1.0/maven-artifact-3.1.0.jar (52 kB at 24 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-model-builder/3.1.0/maven-model-builder-3.1.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/3.1.0/maven-repository-metadata-3.1.0.jar (30 kB at 7.3 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-aether-provider/3.1.0/maven-aether-provider-3.1.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings-builder/3.1.0/maven-settings-builder-3.1.0.jar (41 kB at 7.9 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/eclipse/aether/aether-spi/0.9.0.M2/aether-spi-0.9.0.M2.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/eclipse/aether/aether-spi/0.9.0.M2/aether-spi-0.9.0.M2.jar (18 kB at 2.6 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/eclipse/aether/aether-impl/0.9.0.M2/aether-impl-0.9.0.M2.jar Downloading from central: https://repo.maven.apache.org/maven2/org/eclipse/aether/aether-api/0.9.0.M2/aether-api-0.9.0.M2.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-model-builder/3.1.0/maven-model-builder-3.1.0.jar (159 kB at 14 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/3.0.10/plexus-utils-3.0.10.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-aether-provider/3.1.0/maven-aether-provider-3.1.0.jar (60 kB at 3.4 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-classworlds/2.4.2/plexus-classworlds-2.4.2.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/eclipse/aether/aether-impl/0.9.0.M2/aether-impl-0.9.0.M2.jar (145 kB at 6.1 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/3.1.0/maven-model-3.1.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/3.0.10/plexus-utils-3.0.10.jar (231 kB at 8.4 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-component-annotations/2.0.0/plexus-component-annotations-2.0.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-component-annotations/2.0.0/plexus-component-annotations-2.0.0.jar (4.2 kB at 151 B/s) Downloading from central: https://repo.maven.apache.org/maven2/org/eclipse/sisu/org.eclipse.sisu.plexus/0.0.0.M2a/org.eclipse.sisu.plexus-0.0.0.M2a.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-classworlds/2.4.2/plexus-classworlds-2.4.2.jar (47 kB at 1.4 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar (45 kB at 1.3 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/eclipse/aether/aether-api/0.9.0.M2/aether-api-0.9.0.M2.jar (134 kB at 3.8 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/sonatype/sisu/sisu-guice/3.1.0/sisu-guice-3.1.0-no_aop.jar Downloaded from central: https://repo.maven.apache.org/maven2/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar (5.8 kB at 166 B/s) Downloading from central: https://repo.maven.apache.org/maven2/aopalliance/aopalliance/1.0/aopalliance-1.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/aopalliance/aopalliance/1.0/aopalliance-1.0.jar (4.5 kB at 125 B/s) Downloading from central: https://repo.maven.apache.org/maven2/org/eclipse/sisu/org.eclipse.sisu.inject/0.0.0.M2a/org.eclipse.sisu.inject-0.0.0.M2a.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/3.1.0/maven-core-3.1.0.jar (563 kB at 14 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/asm/asm/3.3.1/asm-3.3.1.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/eclipse/sisu/org.eclipse.sisu.inject/0.0.0.M2a/org.eclipse.sisu.inject-0.0.0.M2a.jar (202 kB at 5.1 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-filtering/3.2.0/maven-filtering-3.2.0.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-filtering/3.2.0/maven-filtering-3.2.0.jar (52 kB at 1.3 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/3.3.3/maven-shared-utils-3.3.3.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/eclipse/sisu/org.eclipse.sisu.plexus/0.0.0.M2a/org.eclipse.sisu.plexus-0.0.0.M2a.jar (202 kB at 5.0 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/commons-io/commons-io/2.6/commons-io-2.6.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/3.1.0/maven-model-3.1.0.jar (164 kB at 3.8 kB/s) Downloading from central: https://repo.maven.apache.org/maven2/org/apache/commons/commons-lang3/3.8.1/commons-lang3-3.8.1.jar Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/3.3.3/maven-shared-utils-3.3.3.jar (154 kB at 3.5 kB/s) Downloaded from central: https://repo.maven.apache.org/maven2/asm/asm/3.3.1/asm-3.3.1.jar (44 kB at 976 B/s) Downloaded from central: https://repo.maven.apache.org/maven2/commons-io/commons-io/2.6/commons-io-2.6.jar (215 kB at 3.7 kB/s) Downloaded from central: https://repo.maven.apache.org/maven2/org/sonatype/sisu/sisu-guice/3.1.0/sisu-guice-3.1.0-no_aop.jar (357 kB at 4.4 kB/s) Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/commons/commons-lang3/3.8.1/commons-lang3-3.8.1.jar (502 kB at 4.2 kB/s) [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary for sky-take-out 1.0-SNAPSHOT: [INFO] [INFO] sky-take-out ....................................... SUCCESS [ 0.009 s] [INFO] sky-common ......................................... FAILURE [04:03 min] [INFO] sky-pojo ........................................... SKIPPED [INFO] sky-server ......................................... SKIPPED [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 04:03 min [INFO] Finished at: 2025-06-07T16:27:21+08:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources) on project sky-common: Execution default-resources of goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources failed: Plugin org.apache.maven.plugins:maven-resources-plugin:3.2.0 or one of its dependencies could not be resolved: [ERROR] Could not transfer artifact org.apache.maven:maven-settings:jar:3.1.0 from/to central (https://repo.maven.apache.org/maven2): Connect to repo.maven.apache.org:443 [repo.maven.apache.org/151.101.108.215] failed: Connect timed out [ERROR] [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException [ERROR] [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn <args> -rf :sky-common Process finished with exit code 1 是什么问题
06-08
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值