------------------------------------------------------------------------------------Linux Kestrel 部署aspnetcore.web----------------------------------------------------------------
1.部署于Linux环境用Kestrel 托管
前置条件是安装aspnetcore 运行时或者netcore sdk 这里安装 sdk,安装sdk还是采用手动下载然后通过ftp上传安装包到linux 安装包下载 https://dotnet.microsoft.com/download/dotnet-core/3.1
下载后 tar -zxvf dotnet-sdk-3.1.101-linux-x64.tar.gz /usr/local/dotnet
vim /etc/profile 增加如下配置:
export DOTNET_ROO=/usr/local/dotnet
export PATH=$PATH:/usr/local/dotnet
:wq 退出 运行 source /etc/profile
输入 dotnet --version 或者 dotnet --info 提示 dotnet 版本信息即安装成功。
详细配置信息可参考文档:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-3.1
基础配置如下,WebHost.CreateDefaultBuilder() 默认使用Kestrel ,Kestrel参数配置可以用UseKestrel配置,如设置监听端口。
这里采用UseUrls 用一个host.json 来配置url规则和端口。
发布配置如下图:
点击发布到本地后,利用ftp上传到服务器后 切换到该目录后
输入 dotnet aspnetapp.dll & 注意这里加一个 & 表示以后台进程运行。
输入 curl http://localhost:8090 看到返回html元素表示成功。
备注:可以输入jobs 查看后台运行进程 ,这里输入会看到8090 运行端口即web站点进程。
可以用 kill %num num表示进程ID 结束进程
------------------------------------------------------------------------------------Linux Kestrel 部署aspnetcore.web----------------------------------------------------------------
------------------------------------------------------------------------------------Windows IIS 部署aspnetcore.web------------------------------------------------------------------
aspnet.core 2.x 与3.x有一定区别,如果是aspnetcore2.x版本因为是支持netframework框架的,所以用传统framework框架托管模式部署,本章主要讲aspnetcore3.0 部署于IIS的经验。
aspnet.core3.0是基于无托管模式的,是基于跨完全跨平台的版本,即windows也算是一个跨平台操作系统。
第一步发布包配置:
第二步发布包后会生成web.config 如下(如果没有生成该配置web.config 则手工生成如下配置即可)
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath=".aspnetapp.exe" stdoutLogEnabled="false" stdoutLogFile=".logsstdout" hostingModel="inprocess" />
</system.webServer>
</location>
</configuration>
<!--ProjectGuid: 5fdcc1ed-9f59-47ed-969d-5e463cdd8d52-->
第三步创建应用池:
第四步:略 新建web站点病绑定上述应用池,运行即可成功。
第五步:前置条件(这一步是安装 .NET Core 托管)
下载 .NET Core 托管捆绑包安装程序 下载地址:https://www.microsoft.com/net/permalink/dotnetcore-current-windows-runtime-bundle-installer 执行下述操作。
-
在 IIS 服务器上运行安装程序。
-
重启服务器或在命令行界面中执行 net stop was /y,后跟 net start w3svc 。
------------------------------------------------------------------------------------Windows IIS 部署aspnetcore.web------------------------------------------------------------------