来个干货——使用VS2019发布.NET Core程序并部署到IIS的最新教程
使用VS2019发布.NET Core程序并部署到IIS,不管你是使用.NET Core开发的是Web API还是网站类的程序,如果你是部署到IIS,那么下面的内容都适合于你,不会将.NET Core程序部署到IIS上的小伙伴们,可以看看了。
将.NET Core程序部署到IIS总体需要经过三大步骤
1、安装IIS和.NET Core运行时程序
2、以文件的形式发布.NET Core程序指定目录
3、IIS上面建立网站并配置好网站设置
一、安装IIS和.NET Core运行时程序
部署.NET Core程序首先要确保你的服务器上的IIS环境是安装好的,不知道怎么在服务器上安装IIS的,可以自行搜索一下。确保IIS安装好了之后,还需要安装.NET Core的运行时,运行时程序文件可以在官网下载最新版本安装,地址 https://dotnet.microsoft.com/download

安装好了之后,如果你在IIS上模块里面看到AspNetCoreModule,标识安装成功了。查看方式如下:

进入IIS后,先点击左侧你的服务器上面IIS名称,然后会出现上图右边所示的模块,点击就会在下图右侧出现IIS上众多的模块,当然安装了运行时后,就会出现AspNetCoreModule这个东西,标识安装成功,已经具备在IIS上运行.NET Core程序的环境了。

二、 以文件的形式发布.Net Core程序到指定目录
VS2019发布.NET Core程序提供了5中方式,文本为了演示目的就以文件的形式发布.NET Core程序到指定目录的方式来说明一下发布过程。打开你的.NET Core程序解决方案,在.NET Core程序上右键,点击发布,如下图所示:

点击发布(Publish)后会出现下面的选择设置框,然后根据你的需求设置好保存的目录稽核,这里选择Folder

然后,点击发布

发布成功后,找到这个目录,将其打包上传到服务器上,文本这纯演示,就直接在本机上制作,就略过复制文件到安装了IIS的服务器上的步骤。
三、IIS上建立网站
在IIS上建立网站,需要提前将发布的文件复制到服务器的任意目录,不一定放在C盘的wwwroot目录,你可以放到任何未知,在服务器上打开IIS,为了方便,你可以在服务器上建立一个IIS的快捷方式。

在右键添加网站后,会出现下面的添加网站界面,设置好网站名称,我一般习惯的命名为域名的名称,物理路径就是上传到服务器上的额发布文件保存的目录,主机名可以设置为域名,IP地址,设置为域名前提需要你的域名解析了才行,不然访问不了。还有一种方式就是修改host文件。

修改应用程序池为无托管代码
在上面步骤添加网站完毕后,会自动创建和网站名称一样的应用程序池。通俗的来讲,应用程序池就是服务器分配给网站的一个资源集合,管理着网站的内存,进程等内容,如果你的网站使用了缓存,缓存分配的内存也是受应用程序池管理的。应用程序池一回收,缓存就全部失效。所以一般的所发是使用分布式缓存,如redis等等,所以在ASP.NET时代,网站慢了,重启大法很好用也是这个道理。

如果你的程序要和数据库打交道,数据库和网站没有分开时,则还需要修改应用程序标识,在应用程序池右键--->高级设置,弹出的窗口上面修改即可

在打开高级设置窗口里面,有很多设置项,不懂得别乱整,感兴趣得可以自行研究一下。但对于.NET Core 程序来说,连了数据库最有可能修改得就是高级设置里面的标识项,标识设置就是给应用程序相应访问数据库、执行上下文读写的权限。

好了,整个.NET Core 应用程序发布部署到这里也就完成了,试一下是否可以正常访问吧。
来个干货——使用VS2019发布.NET Core程序并部署到IIS的最新教程的更多相关文章
- 使用VS 2019发布.net core程序并部署到IIS的最新教程
不管你是使用.net core开发的是web api还是网站类的程序,如果你是部署到IIS,那么下面的内容都适合于你,不会将.net core程序部署到IIS的朋友,可以看看这篇手把手教你部署.net ...
- ASP.NET MVC - 发布web应用程序、部署到IIS
发布项目 右击项目 - 发布 选择IIS - 点击发布 发布方法 - 文件系统,目标位置 - 选择与项目所在目录不同的目录(也即,指定一个发布生成文件的目录),文件发布选项 - 不选 - 点击发布 安 ...
- 通过VS2017发布.net core程序并使用Web 部署到远程服务器最新教程
最近一个项目中,为App开发后台接口,技术选型为最新 .net core版本,使用.net core开发web api接口过程中,为了方便app团队成员直接在线调用接口,找了公网上的一台服务器做为ap ...
- 关于.net core程序的部署
最近发布.net core程序的时候,发现它是可以独立部署的,它支持如下两种部署方式: 依赖框架的部署FDD.只发布我们的程序,运行前用户需要手动安装.net core runtime. 独立部署SC ...
- 运行Vue在ASP.NET Core应用程序并部署在IIS上
前言 项目一直用的ASP.NET Core,但是呢我对ASP.NET Core一些原理也还未开始研究,仅限于会用,不过园子中已有大量文章存在,借着有点空余时间,我们来讲讲如何利用ASP.NET Cor ...
- 手把手教你用Jenkins自动发布dotnet core程序
Jenkins部分 首先,我们要有个Jenkins咯,下载链接:https://jenkins.io/download/ 我们安装官网教程安装好jenkins,安装教程略.... 嗯?不是说好手把手么 ...
- 把Asp.net Core程序代码部署到Ubuntu(不含数据库)
今天记录一下第一次把.net core 程序发布到linux系统.linux用的是ubuntu Server 18.04版本.运行的IDE是vs 2019,发布出来是.net core 2.2版本. ...
- ASP.NET Core开发期间部署到IIS自定义主机域名并附加进程调试
在.NET Framework环境下,我们经常会这么做 把一个web项目不经过发布直接部署到IIS里去,配置上主机名,修改一下hosts文件,就可以用自定义的域名来访问我们的应用程序,使用附加到进程( ...
- .Net Core程序的部署(FDD与SCD)
最近打算做一个公司的代码走查工具,思前想后觉得正好可以当作一个Core的实践机会,于是上官网看了下资料,顺便作了一下笔记方便以后查阅. 注1:这里的Core程序部署指的是.Net Core而非Asp. ...
随机推荐
- Python第六章-函数04-递归函数和拉姆达表达式
五.递归函数 什么叫递归(recusive)? 你拿两个镜子互相面对着, 然后去看镜子, 会发现每个镜子中很多个镜子, 层层的嵌套, 无穷尽, 这就是一种递归! 从前有坐山, 山里有座庙, 庙里有个老 ...
- OpenCV-Python 理解特征 | 三十六
目标 在本章中,我们将尝试理解什么是特征,为什么拐角重要等等 解释 你们大多数人都会玩拼图游戏.你会得到很多小图像,需要正确组装它们以形成大的真实图像.问题是,你怎么做?将相同的理论投影到计算机程序上 ...
- PyTorch ImageNet 基于预训练六大常用图片分类模型的实战
微调 Torchvision 模型 在本教程中,我们将深入探讨如何对 torchvision 模型进行微调和特征提取,所有这些模型都已经预先在1000类的Imagenet数据集上训练完成.本教程将深入 ...
- 为什么我的PayPal 买家账号往商家账号付款,反而从商家账号里面扣款?
如果读者踩了跟我一样坑的话,建议赶紧去检查一下 application.properties 配置文件!!! 解决方法: 不妨试试将上面的 clientId和clientSecret 切换为你的商 ...
- Hbase 整合 Hadoop 的数据迁移
上篇文章说了 Hbase 的基础架构,都是比较理论的知识,最近我也一直在搞 Hbase 的数据迁移, 今天就来一篇实战型的,把最近一段时间的 Hbase 整合 Hadoop 的基础知识在梳理一遍,毕竟 ...
- Python学习笔记:List类型所有方法汇总
###############################红色标红的部分为常用方法############################### import copy names = [&quo ...
- [poj1061]青蛙的约会<扩展欧几里得>
题目链接:http://poj.org/problem?id=1061 其实欧几里得我一直都知道,只是扩展欧几里得有点蒙,所以写了一道扩展欧几里得裸题. 欧几里得算法就是辗转相除法,求两个数的最大公约 ...
- Flutter 不可错过的学习资源
老孟导读:今天给大家分享一下我在学习Flutter的过程中整理的资料,这些文章或者开源项目都是精挑细选的,希望可以帮助到到家.另外相关资料会在Github一直更新,欢迎大家fork,如果喜欢的话给个小 ...
- 从养孩子谈谈 IO 模型(一)
同步/异步.阻塞/非阻塞 说的是一回事儿吗? 同步/异步.阻塞/非阻塞 你能通俗易懂的讲清楚吗? Java 中的 BIO.NIO.AIO 你了解吗? Socket 编程你还会吗? Linux 操作系统 ...
- Linux命令后面加 & 的作用
在命令的后面加一个 & 的作用是,将这个任务放到后台执行.看下面的例子. 输入gedit回车,可以看到,打开了Linux的文本编辑器,但是命令窗口执行不了其他命令了,只有退出文本编辑器才能继续 ...