.NET Core在WindowsServer服务器部署及发布
VS使用WEB DEPLOY发布.NET Core程序
背景是这样的,公司有两台服务器,平时一台备用,另一台做为主生产机器。当有大量补丁或者安装什么东西需要重启的时候,交其中一台直接关掉IIS,然后重启即可,此时另一台负责处理用户请求。
之前一台服务器一个网站的时候,发布都是远程上去,然后复制开发机器pubish目录下的文件过去。这种情况有几个弊端:
- 每次复制过去的文件量巨大。
- web.config难以把控,虽然使用Release和Debug来控制连接字符串,但是,必然不如web.config来得正规。
- 每次要登陆远程机器,有时候剪切板无法共享,需要使用驱动器共享来复制文件,然后还要解压之类的操作。容易出现问题。
使用web deploy发布的话,带来了哪些改变:
- 不再需要远程登陆服务器,减少出错机率。多台服务器发布时效率高。
- 文件量明显减少。
- 控制vs在发布前都提交一个svn版本,使用svn作为备份,下次出问题时,只需要回滚到上一个版本,然后进行发布即可。
- 多个网站操作方便,不需要多个文件夹来回切换。
- 不知道是不是错觉,我感觉发布的速度快很多。
使用的方法
环境需要:
- web platform installer。(WEB PI,其实是用来安装web deploy用的,但是我没用,我直接在官网下载的)
- 安装【管理服务】
- 安装web deploy。
操作:
- 如果有WEB PI,则直接使用它先安装最新版WEB DEPLOY(本文使用WEB DEPLOY3.6)。
- 如果没有WEB PI,或者不想用它安装,就直接搜索微软官网的WEB DEPLOY,然后分别安装。
- 检测系统【服务】中的[Web Management Service]有没有打开,没有打开的话,请打开。
- 在IIS中,选择服务器结点,然后在内容里面打开【管理服务】,右边操作栏里面停止服务,把【启用远程连接】前面复选框选上。然后选在下面的使用windows凭据或IIS用户。点右边的应用,然后启动服务。
- 选中你要发布的网站的站点节点,在内容里面打开【IIS管理器权限】,进入之后,右击鼠标,选【允许用户】,然后可以输入IIS用户,也可以输入windows的用户。这个用户将在vs里面被作为远程发布的凭证。
- 打开vs,右击项目名,点发布,输入刚刚那台服务器的IP地址,输入用户名和密码,在【站点名称】的地点输入服务器中对应网站的网站名称,如果是虚拟目录的二级站点,请将名称用/隔开。
- 然后点击vs发布中的【验证连接】,如果成功,则ok。不成功,自行查找问题。
- 补充.NET Core发布在配置完成之后发布提示ERROR_CERTIFICATE_VALIDATION_FAILED错误,解决方法:
- 打开Properties/PublishProfiles/xxx.pubxml文件
- 在PropertyGroup节点内加入<AllowUntrustedCertificate>True</AllowUntrustedCertificate>
- 保存后重新发布
.NET Core在WindowsServer服务器部署及发布的更多相关文章
- Windows 服务器部署 asp.net core
踩坑日记与 Windows 服务器部署 asp.net core 指南. 准备 操作系统:Windows Server 2008 R2 或更高版本 文件: Microsoft Visual C++ 2 ...
- Powered by .NET Core 进展:第5次发布尝试(Windows部署)
(图注:Windows 自带的性能监控,红色表示 CPU 占用,绿色表示 QPS) 今天中午 12:30 左右,我们进行了 .NET Core 博客站点的第5次发布(页脚会显示"Powere ...
- Linux服务器部署.Net Core笔记:目录
目录 Linux服务器部署.Net Core笔记:一.开启ssh服务 Linux服务器部署.Net Core笔记:二.安装FTP Linux服务器部署.Net Core笔记:三.安装.NetC ...
- Asp.net Core 项目API接口服务器部署
Windows server 2008服务器部署: DotNetCore.1.0.0.RC2-WindowsHosting 或者DotNetCore.1.0.5_1.1.2-WindowsHostin ...
- ASP.NET Core ASP.NET Core+MVC搭建及部署
ASP.NET Core+MVC搭建及部署 一.创建项目: 1.选择ASP.NET Core Web Application(.NET Core) 注意框架 2.选择Web Application: ...
- 基于.NET Core开发的个人博客发布至CentOS小计
早些时候,使用 .NET Framework 开发网站,只能部署在 Windows 服务器上面,近两年 .NET Core 如火如荼,乘此机会赶紧上车,最近将自己利用 .NET Core 开发的个人博 ...
- 庐山真面目之十微服务架构 Net Core 基于 Docker 容器部署 Nginx 集群
庐山真面目之十微服务架构 Net Core 基于 Docker 容器部署 Nginx 集群 一.简介 前面的两篇文章,我们已经介绍了Net Core项目基于Docker容器部署在Linux服 ...
- 分享阿里云推荐码 IC1L2A,购买服务器可以直接打9折,另附阿里云服务器部署ASP.NET MVC5关键教程
阿里云推荐码为:IC1L2A 阿里云还是不错滴. 以windows server 2008 R2为例,介绍如何从全新的服务器部署MVC5 站点. 新购买的阿里云服务器是没有IIS的,要安装IIS: 控 ...
- 一个技术汪的开源梦 —— 基于 .Net Core 的组件 Nuget 包制作 & 发布
一个技术汪的开源梦 —— 目录 微软的 ASP.Net Core 强化了 Nuget 的使用,所有的 .Net Core 组件均有 Nuget 管理,所以有必要探讨一下 .Net Core 组件制作 ...
随机推荐
- 用HTML 格式导出Excel
只需按照如下格式写就可,在<head> 里面嵌套table,必须修改html的命名空间,加上一些描述.保存为xls文件 <html xmlns:x="urn:schemas ...
- ubuntu16安装KVM
apt install qemu-kvm libvirt-bin apt install openvswitch-switch
- Thinking in scala (5)----高阶函数*
高阶函数是函数式编程里面一个非常重要的特色,所谓的高阶函数,就是以其它函数作为参数的函数. 下面以一个小例子演示Scala的高阶函数特性,非常有意思,也非常强大. 首先看这么一个程序: code1: ...
- 1、安卓数据存储机制——sharedPreference
项目中用到的数据存储方式: 1.这个项目里的“个人标签“.”个性签名“页面的文字存储——sharedPreference:我们项目中用到的Preference来保存用户编辑的标签.签名内容,并支持用户 ...
- Grid (read-only) objects and methods (client-side reference)获取子表单对象的一些方法 Crm 2016
https://msdn.microsoft.com/en-us/library/dn932126.aspx#BKMK_GridControl Updated: November 29, 2016 A ...
- java短路问题
java短路问题 短路运算符就是我们常用的"&&"."||",一般称为"条件操作". class Logic{ public ...
- STM8S003/005/007芯片解密单片机解密程序提取复制经验分享!
STM8S003/005/007芯片解密单片机解密程序提取复制 芯片解密型号: STM8S003K3T6,STM8S005K6T6,STM8S007C8T6,STM8S003F3P6 STM8S005 ...
- eclipse 工具栏修改
本来和同学约好一起去吃饭的,刚电话说有亲戚过来了,叫我一起去吃 哪有那个闲心,去陪他们吃饭 刚好,把这个一起写了 相信很多人会很烦,eclipse的工具栏太多了,折了一行下来,看着不好看,还烦(本人觉 ...
- 2.5. Integer 16 、Integer 32、Integer 64(Core Data 应用程序实践指南)
Core Data 使用 “带符号的整数”,通常我们会选择Integer 32,如果不够,可以升级为Integer 64 (第3章),通过升级托管对象模型. 这三种类型对应的特性(Property)类 ...
- DELPHI判断是否64位操作系统
function IsWin64: Boolean;var Kernel32Handle: THandle; IsWow64Process: function(Handle: Windows.TH ...