项目发布部署:如何发布.NETCore项目到IIS服务器?

news2024/11/14 12:10:09

前言:本文将详细介绍如何发布.NET Core项目到IIS服务器。首先,第一步需要安装IIS,介绍了在本地电脑和服务器中进行安装。然后需要安装SDK和运行时才能发布.NETCore项目。其次介绍了如何发布.NETCore项目和Vue项目,并配置IIS。最后介绍了如何将项目部署到Service服务中。

一、安装IIS教程

1.1-在本地电脑上(Windows)上安装IIS

(1)右击——>点击【显示设置】

(2)搜索【控制面板】

(3)点击【程序】

(4)点击【启动或关闭windows功能】

(5) 选择Internet Information Service(IIS的缩写)

1.2-在服务器上(WindowsServer)上安装IIS

 如果各位小伙伴没有服务器可以发布到本地配置IIS,如果需要购买云服务器时,腾讯云和阿里云都是不错的选择,可以点击下方链接进入特惠活动购买哦!有任何问题可以咨询我哈~

阿里云:云小站_专享特惠_云产品推荐-阿里云
腾讯云:推广大使特惠产品合集页

(1)打开【服务器管理器】

(2)按照以下步骤操作。点击【添加角色和功能】

(3)点击【下一步】

(4)在安装类型类目中,选择【基于角色活基于功能的安装】。

(5)点击【下一步】

(6)勾选【Web服务器(IIS)】,然后点击【下一步】。

(7)然后点击【下一步】。

(8)然后点击【安装】,这个过程可能比较长一点,需要等一会安装好。

(9)安装完毕后,可以在这里看到有IIS了。

二、在服务器上安装SDK和运行时

下载Runtime官网:.NET Downloads (Linux, macOS, and Windows)

根据自己的项目下载不同的版本:

博主下载的是.NET 5(一般安装RunTime就行了):

下载SDK,博主下载的是64位,具体根据自己的电脑来下载。

得到这2个文件:

如果是在自己电脑上发布,就直接双击安装即可。如果要将项目发布到服务器上,将这2个文件复制到服务器上,再分别进行安装。

在服务器上安装成功后,然后进行测试是否安装成功:

三、项目发布

3.1-发布.NET Core项目到IIS

(1)右击项目,选择【发布】

(2)选择【文件夹】

(3)选择要保存的路径,然后点击【完成】;

(4)点击【发布】,可以看到已经发布完成了。

(5)然后将打包后的文件夹,复制到服务器上。

3.2-发布Vue项目到IIS

(1)打开Vue项目。

(2)在VS Code或者终端属于以下命令进行项目的打包。

npm run build

(3)然后得到一个dist文件夹。

(4)打开IIS,新建一个站点。

(5)然后访问网站,如果出现这个错误。

HTTP错误404.0 -Not Found

您要找的资源已被删除、已更名或暂时不可用。

(6)解决方案如下:在IIS添加一个URL重写功能即可。

6.2-打开以下网址,进行下载并安装:

官方下载:URL Rewrite : The Official Microsoft IIS Site

点击【保存文件】进行下载:

6.3-然后将这个刚刚下载的这个文件,复制到服务器上进行安装。

6.4-然后在Vue站点上,创建一个【web.config】文件,并拷贝以下配置信息。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Handle History Mode and custom 404/500" stopProcessing="true">
          <match url="(.*)" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
          </conditions>
          <action type="Rewrite" url="/" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

四、将项目部署在IIS进行代理

(1)打开IIS,新建一个站点。

(2)修改应用程序池,将.NET CLR版本改为【无托管代码】,将托管管道模式改为【集成】。

(3)然后运行一下,已经成功了。

(4)如果出现以下问题,发现报错了:

HTTP错误500.19 - Internal Server Error

无法访问请求的页面,因为该页的相关配置数据无效。

4.1-先查看模块是否能正常打开。

4.2-因为我们的项目是在桌面上,会存在权限的不足,而报错内容中也提出权限不足,然后我们可以将项目放在其他的磁盘在进行部署。(是的,然后又出现一个错误)

解决(502.5错误):

4.3-将日志打开,然后新建一个【Log】文件夹,然后重启一个IIS,在日志中找到错误。

五、将项目部署到Service服务中

5.1-部署到Service服务中(WebAPI项目)

下载地址:NSSM - the Non-Sucking Service Manager

(1)下载

(2)将下载好的压缩包拷贝到服务器中,进行解压,然后选择跟系统对应的版本。

(3)在此目录下输入"cmd",然后进入当前目录。

(4)输入命令然后会调出这个窗口。

nssm install

Path:C:\Program Files\dotnet\dotnet.exe

(5)以下操作:

5.1-输入以下命名查看是否安装成功:

nssm status 服务名称

5.2-启动

nssm start 服务名称

5.2-NSSM常见命令

1. 安装服务命令
nssm install <servicename>
nssm install <servicename> <program>
nssm install <servicename> <program> [<arguments>]

2. 删除服务
nssm remove
nssm remove <servicename>
nssm remove <servicename> confirm

3. 启动、停止服务
nssm start <servicename>
nssm stop <servicename>
nssm restart <servicename>

4. 查询服务状态
nssm status <servicename>

5. 服务控制命令
nssm pause <servicename>
nssm continue <servicename>
nssm rotate <servicename>

版权声明:本文为原创文章,版权归 [西瓜程序猿] 所有,转载请注明出处,有任何疑问请私信咨询。

原文链接:项目发布部署:如何发布.NETCore项目到IIS服务器?_西瓜程序猿的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1931073.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

自适应键盘,自带隐藏键盘的输入框(UITextField)

引言 在iOS开发中&#xff0c;输入框占据着举足轻重的地位。与安卓不同&#xff0c;iOS输入框经常面临键盘遮挡的问题&#xff0c;或者无法方便地取消键盘。为了解决这些问题&#xff0c;有许多针对iOS键盘管理的库&#xff0c;如IQKeyboardManager、TPKeyboardAvoiding和Keyb…

数仓实践:维度建模标准规范定义

一、引言 指以维度建模作为理论基础,构建总线矩阵,划分和定义数据域、业务过程、维度、度量/原子指标、业务限定、时间周期、统计粒度、派生指标。 规范定义如下: 二、名词术语 名词解释数据域面向业务分析,将业务过程或者维度进行抽象的集合。其中,业务过程可以概括为…

idea中使用maven

默认情况下&#xff0c;idea会自动下载并安装maven&#xff0c;这不便于我们管理。 最好是自行下载maven&#xff0c;然后在idea中指定maven的文件夹路径

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【获取密钥属性(C/C++)】

获取密钥属性(C/C) HUKS提供了接口供业务获取指定密钥的相关属性。在获取指定密钥属性前&#xff0c;需要确保已在HUKS中生成或导入持久化存储的密钥。 在CMake脚本中链接相关动态库 target_link_libraries(entry PUBLIC libhuks_ndk.z.so)开发步骤 构造对应参数。 keyAlias&…

华为OD七日集训第1期 - 按算法分类,由易到难,循序渐进,玩转OD

目录 一、适合人群二、本期训练时间三、如何参加四、7日集训第2期五、精心挑选21道高频100分经典题目&#xff0c;作为入门。第1天、逻辑分析第2天、数组第3天、双指针第4天、数据结构第5天、队列第6天、栈第7天、滑动窗口 六、集训总结 大家好&#xff0c;我是哪吒。 最近一直…

Idea如何快速高效的修改项目的包名

文章目录 前言一、全局替换的快捷键二、弹出如下的界面 前言 当我们有时候在做项目迁移的时候&#xff0c;需要快速的修改项目的包名&#xff01;那么如何快速高效的修改项目的报名呢&#xff1f; 经过尝试了很多方法&#xff01;最简单的方法就是利用全局替换来直接替换报名&…

半自动辅助制作数据集【实例分割】

利用yoloV8的实例分割模型&#xff0c;半自动辅助制作数据集 引言&#xff1a;【主要步骤】 步骤1&#xff1a;无人机航拍&#xff0c;收集基础图片 步骤2&#xff1a;将收集到的图片&#xff0c;全部用yoloV8-seg.pt模型进行实例分割【预测之前&#xff0c;将配置文件default.…

图——图的应用02最短路径(Dijkstra算法与Floyd算法详解),拓扑排序及关键路径

前面介绍了图的应用——01最小生成树章节&#xff0c;大家可以通过下面的链接学习&#xff1a; 图——图的应用01最小生成树&#xff08;Prim算法与Kruskal算法详解&#xff09; 今天就讲一下图的其他应用——最短路径&#xff0c;拓扑排序及关键路径。 目录 一&#xff0c…

解决Qt6 OpenCV项目编译出现错误undefined reference to symbol ‘cv::cvtColor,无法解析的符号

在一次Qt6 OpenCV项目编译的过程中&#xff0c;出现错误undefined reference to symbol cv::cvtColor&#xff0c;无法解析的符号&#xff0c;问题是查看INCLUDEPATH和LIBS&#xff0c;都已经添加正确。 而且这个函数也可以在头文件中索引到。到底是什么问题呢&#xff1f; 清…

公司政务办理流程分享(北京)

社保增减员&#xff1a; 参保登记——增减员业务这么办_北京市人力资源和社会保障局_社会保险 https://rsj.beijing.gov.cn/yltc/202310/t20231025_3287007.html 公积金增减员&#xff1a; https://dwwsyw.gjj.beijing.gov.cn/

【从零开始实现stm32无刷电机FOC】【实践】【5/6 stm32 adc外设的高级用法】

目录 采样时刻触发采样同步采样 点击查看本文开源的完整FOC工程 本节介绍的adc外设高级用法用于电机电流控制。 从前面几节可知&#xff0c;电机力矩来自于转子的q轴受磁力&#xff0c;而磁场强度与电流成正比&#xff0c;也就是说电机力矩与q轴电流成正相关&#xff0c;控制了…

which 命令在Linux中是一个快速查找可执行文件位置的工具

文章目录 0、概念1、which --help2、which命令解释 0、概念 which命令用于查找命令的可执行文件的路径which 命令在 Linux 中用于查找可执行命令的完整路径。当你在 shell 中输入一个命令时&#xff0c;shell 会在环境变量 $PATH 定义的目录列表中查找这个命令。which 命令可以…

数据结构——单链表详解(超详细)(2)

前言&#xff1a; 上一篇文章小编简单的介绍了单链表的概念和一些函数的实现&#xff0c;不过为了保证文章的简洁&#xff0c;小编把它分成了两篇来写&#xff0c;这一篇小编紧接上一篇文章继续写单链表函数功能的实现&#xff1a; 目录&#xff1a; 1.单链表剩余函数的编写 1.…

Spring Security Oauth2源码分析

Spring Security Oauth2源码分析 前言一&#xff1a;客户端OAuth2授权请求的入口1、DefaultOAuth2AuthorizationRequestResolver类OAuth2AuthorizationRequest类authorizationRequestUri 的构建机制redirectUri 3、OAuth2AuthorizationRequestRedirectFilter类 二&#xff1a;O…

hiphop音乐风格分类有几种 怎么使用FL Studio制作Hip Hop音乐 hiphop音乐制作教程

Hip Hop音乐是一类新潮的音乐风格&#xff0c;融合了许多不同的文化元素和音乐表达方式。嘻哈&#xff08;hip hop&#xff09;诞生于美国贫民区街头的一种文化形式&#xff0c;一般的说法认为它诞生于美国纽约布朗克斯。嘻哈首先在纽约市北部布朗克斯市区的非裔及拉丁裔青年之…

kali进行host碰撞实验

目录 在kali上安装docker&#xff0c;完成环境搭建&#xff0c;进行host碰撞实验 更新软件包列表 下载阿里云的镜像源 添加 GPG 密钥并添加更新源 安装 Docker 安装成功检验 开启docker 检查docker状态 拉取镜像 在kali访问ip&#xff08;加端口&#xff09; 下载压缩…

京东超级18活动入口!京东超级18活动怎么玩?

京东推出新活动&#xff0c;低价的持续性项目“京东超级18”。 活动入口&#xff1a; 京东超级18&#xff0c;领60元大额补贴&#xff01; 口令直达&#xff1a;14:/京东超级18&#xffe5;NF5fuBPWIIaHRiMr&#xffe5;&#xff0c;↗鯨○Dσσδng。 手机京东搜索&#xf…

Claude 3.5 Sonnet模型发布,对比ChatGPT4o孰强孰弱

Anthropic 这家生而为打击 OpenAI 安全问题的公司&#xff0c;正式发布了Claude 3.5 Sonnet模型&#xff01; 用官网的话就是&#xff1a; 今天&#xff0c;我们推出了 Claude 3.5 Sonnet&#xff0c;这是我们即将推出的 Claude 3.5 型号系列中的第一个版本。Claude 3.5 Sonne…

vscode 打开远程bug vscode Failed to parse remote port from server output

vscode 打开远程bug vscode Failed to parse remote port from server output 原因如图&#xff1a; 解决&#xff1a;

02 Git环境搭建

第2章&#xff1a;Git环境搭建 一、Git下载和安装 ​ 官网&#xff1a;Git (git-scm.com) 一&#xff09;安装主程序 ​ 准备安装包&#xff0c;双击安装 ​ 开始安装 ​ 选择安装位置 ​ 选择需要安装的组件&#xff08;默认&#xff09; ​ 选择文件夹菜单 ​ 选择编辑器&…