• ASP.NET Core 项目部署


    部署环境

    部署环境有两种:

    • .NET Core SDK 包含所有运行时和程序开发包,用于程序开发使用,体积相对较大。
    • .NET Core Runtime 仅用于程序运行,不包含开发包,体积小。

    注:部署程序时不推荐安装SDK,优先使用Runtime环境。

    下载地址: https://dotnet.microsoft.com/download

    控制台运行

    程序发布后,会在发布的目录产生一个dll文件,要运行该程序,需要通过命令来执行;如果是Windows系统还可以直接点 xxx.exe 来执行。

    dotnet xxx.dll
    

    优点:

    • 更好的性能和内存利用率。

    • 跨平台

    • 灵活性,它是独立于操作系统进行开发和修补的。

    • 编程端口和 TLS 配置

    • 扩展性,允许 PPv2 等协议和备用传输

    缺点:

    IIS部署

    ASP.NET Core 不在由IIS进程托管,而是在Kestrel服务器上运行,IIS则扮演反向代理的的角色,转发请求到Kestrel的不同端口程序当中,然后将处理好的请求推送到中间管道,在返回到IIS,在由IIS转达到不同客户端。

    image

    IIS安装

    Windows 系统

    1. 打开控制面板,选择程序。

    image

    1. 启用或关闭Windows功能。

    image

    1. 勾选Internet Information Services以及Web管理工具下的IIS管理控制台并确认。

    image

    1. 打开控制面板→系统和安全→Windows 工具,打开IIS管理器。

    image

    1. 打开 Default Web Site ,或打开浏览器输入访问地址:localhost,呈现如下画面,则表示安装成功。

    image

    Windows Server 安装

    1. 选择添加角色和功能。

    image

    1. 一直下一步到选择web服务器。

    image

    1. 添加服务器角色。

    image

    1. 功能可以按需选择,等待安装完毕。

    2. 安装成功后,在服务器管理器中会出现IIS服务器。

    image

    1. 打开 Default Web Site ,或打开浏览器输入访问地址:localhost,呈现如下画面,则表示安装成功。

    image

    部署步骤

    1. 安装.NET Core捆绑包,点此处下载

    2. Windows Sever系统:打开IIS,进入IIS 管理器;Windows系统:打开控制面板→系统和安全→Windows 工具→IIS管理器。

    image

    1. 右键点击网站,选择添加网站,然后进入配置。

    image

    1. 对网站进行相关配置,包括名称、目录、类型、IP、端口等信息。

    image

    1. 设置应用程序池为“无托管代码”,因为IIS是作为一个反向代理的角色,并不需要它负责托管代码。

    image

    1. 访问部署地址成功。

    image

    错误解决

    错误一:HTTP 错误 405.0 - Method Not Allowed

    现象

    当部署完成,访问时出现错误:HTTP 错误 405.0 - Method Not Allowed 无法显示您正在查找的页面,因为使用了无效方法(HTTP 谓词)。

    image

    解决方法

    1. Windows系统:打开Windows功能,关闭WebDAV功能,Windows Server系统:在角色功能中删除即可。

    image

    1. 打开处理程序映射。

    image

    1. 找到EtensionlessUrlHander-Integrated-4.0→编辑托管处理程序→请求限制→添加PUT,DELETE谓词。

    image

    1. PUT,DELETE请求正常。

    image


    __EOF__

  • 本文作者: 故人与猫
  • 本文链接: https://www.cnblogs.com/gurenyumao/p/17528135.html
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    安装Redis
    全栈---JSONP
    sqlite3 dbconfig说明
    RK3568平台开发系列讲解(音视频篇)RTMP 推流
    C++挑选书籍
    云表:只需3步,让你搞懂低代码和传统开发有什么区别
    Hadoop入门(三):本地运行模式和完全分布模式,集群分发脚本、远程同步、集群分发
    基于文本IO实现的小程序
    (免费分享)基于springboot医院管理系统
    【web-5】HTTP/HTTPS
  • 原文地址:https://www.cnblogs.com/gurenyumao/p/17528135.html