来个干货——使用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. ...
随机推荐
- 阿里开源首个移动AI项目,淘宝同款推理引擎
淘宝上用的移动AI技术,你也可以用在自己的产品中了. 刚刚,阿里巴巴宣布,开源自家轻量级的深度神经网络推理引擎MNN(Mobile Neural Network),用于在智能手机.IoT设备等端侧加载 ...
- 移动端H5调试
背景:开发PC页面的时候使用chrome浏览器的开发者工具,可以很容易的捕获到页面的dom元素,并且可以修改样式,方便调试:但是手机上却很麻烦,因为手机上没有办法直接打开开发者工具查看元素.其实可以通 ...
- 本地缓存Ehcache
1,什么是Ehcache Ehcache是纯java的开源缓存框架,具有快速.精干等特点,是Hibernate中默认的CacheProvider.它主要面向通用缓存.Java EE和轻量级容器, ...
- Spring - 事务管理概述
什么是事务管理? 第一个问题:什么是事务? 事务一般是相对数据库而言的,对于数据库一次操作就属于一个事务, 一次操作可以是几句 SQL 语句,也可以是若干行 JDBC 的 Java 语句.事务既然 ...
- 并查集例题02.带权并查集(poj1182)
Description 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形.A吃B, B吃C,C吃A.现有N个动物,以1-N编号.每个动物都是A,B,C中的一种,但是我们并不知道它到底 ...
- Node.js快速创建一个Express应用的几个步骤
Node.js 的 Express 框架学习 转载和参考地址: https://developer.mozilla.org/zh-CN/docs/Learn/Server-side/Express_N ...
- JAVABEAN的SCOPE属性(转载)
对于JSP 程序而言,使用JavaBeans 组件不仅可以封装许多信息,而且还可以将一些 数据处理的逻辑隐藏到JavaBeans 的内部,除此之外,我们还可以设定JavaBeans 的Scope ...
- Java第三十五天,用JDBC操作MySQL数据库(一),基础入门
一.JDBC的概念 Java DataBase Connectivity 从字面意思我们也不难理解,就是用Java语言连接数据库的意思 JDBC定义了Java语言操作所有关系型数据库的规则(接口).即 ...
- IDEA使用技巧,如何在JSP中创建Servlet“小程序”
步骤 1.新建一个java类,实现Servlet接口 2.实现接口中的抽象方法: 3.在web.xml文件中配置好servlet <web-app ......> <servlet& ...
- javascript入门 之 用bootstrap-table写一个表格
方法1(对普通的 table 设置 data-toggle="table" 即可): <!DOCTYPE html> <html> <head> ...