• asp.net core 程序的部署


    ASP.NET Core 应用程序部署

     

    在Windows OS部署

    使用IIS

    发布部署

    1. 本机安装IIS服务器,这是必须的
    2. 发布asp.net Core应用程序
    3. 部署应用程序到IIS

    应用程序发布说明

    1. VS部署模式支持独立部署及框架依赖部署,若本机已安装.NET Core SDK,我们选择框架依赖部署即可
    2. 运行文件支持发布为可移植的二进制文件或系统支持的可执行文件,如果部署模式使用框架依赖部署,则运行文件可以发布为可移植的二进制文件
      在这里插入图片描述

    IIS配置说明

    1. 安装 ASP.NET Core 模块
    2. 重启 Windows Process Activation Service 服务,或在命令行界面执行以下命令
      net stop was /y
      net start w3svc
    3. 将应用程序池的“.NET CLR 版本”设置为“无托管代码”
    4. 将应用程序池“高级设置”里面的“启用 32 位应用程序”设置为False

    这样所有的配置就完成了,试着运行站点看网站是否可以正常运行,详细配置及说明可以看官方文档。

    应用托管模型

    在Windows上使用IIS托管ASP.NET Core应用程序有两种托管模型:进程内(inprocess)及进程外(OutOfProcess),默认为inprocess

    进程内托管模型

    说明:使用进程内托管,ASP.NET Core 在和IIS工作进程相同的进程中运行,下图说明了IIS、ASP.NET Core模块和进程内托管的应用之间的关系(摘自官网):
    在这里插入图片描述
    HTTP请求到达IIS后,主要由ASP.NET Core模块接收,然后传递到IIS Http服务器,最后IIS Http服务器会将请求推送到ASP.NET Core中间件管道中。应用的响应再通过IIS Http服务器传递回IIS,再由IIS将响应返回给客户端。
    在进程内托管模型中,ASP.NET Core应用程序使用IIS Http服务器。
    项目文件配置:
    <PropertyGroup> <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel> </PropertyGroup>

    进程外托管模型

    说明:使用进程外托管,ASP.NET Core 的进程与 IIS 工作进程是分开的,下图说明了IIS、ASP.NET Core模块和进程内托管的应用之间的关系(摘自官网):
    摘自官网
    HTTP请求到达IIS后,主要由ASP.NET Core模块接收,然后将请求转发到Kestrel服务器,最后由Kestrel将请求推送到ASP.NET Core 中间件管道中。应用的响应传递回 IIS,IIS 将响应推送回发起请求的 HTTP 客户端。
    在进程外托管模型中,ASP.NET Core应用程序使用Kestrel服务器。
    项目文件配置:
    <PropertyGroup> <AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel> </PropertyGroup>

    使用Kestrel

    默认情况下,ASP.NET Core 项目模板使用 Kestrel。

    Kestrel 可单独使用,也可以和反向代理服务器结合使用,如在IIS上部署的进程外托管模型

    将应用程序发布后,可以使用命令行工具运行网站
    dotnet xxx.dll --urls http://0.0.0.0:5000
    --urls参数可以指定url及端口
    0.0.0.0 表示IPV4地址
    [::]表示IPV6地址

    这只是一种配置方式,还可以通过环境变量、UserUrls扩展方法等

    将Kestrel作为web服务器的时候,可能会需要做一些针对服务器的配置选项,我们可以将配置写在appsettings.json中,然后通过Startup.ConfigureServicesProgram.cs加载配置

    详细配置,参考官方文档

    使用HTTP.sys

    使用Docker

  • 相关阅读:
    MyMacro
    CConfigXmlFile02
    “十步一杀” 干掉你的职场压力
    只有聪明人才悟到:通向成功的饥饿法则
    高层管理者应具备什么样的特点? (转)
    两个小故事,告诉你不可不知的成功密码
    中秋望月
    锦里中秋有感
    支招:如何增强创业信心,克服创业恐惧?
    创业者必看:创业得出的10条血泪经验
  • 原文地址:https://www.cnblogs.com/qiu18359243869/p/14702339.html
Copyright © 2020-2023  润新知