ASP.NET站点Web部署(一键发布的实现)

 

在开发过程中经常需要发布到开发环境、测试环境或者预发布环境上给其他同事进行测试验证效果等等,每次发布都要备份,拷贝,修改配置文件等等重复操作非常的麻烦,效率大打折扣,而web部署提供了这样的解决方案:在服务端安装Web Deploy服务,由Web Deploy服务完成备份发布等操作,今天小编就以图文并茂的方式来完整介绍这一安装部署的过程,具体有以下两大部分:

 

第一部分:Web Deploy服务的安装与设置

 

一、安装IIS管理服务:打开服务器管理器 - 添加角色和功能  勾选web服务器(IIS)的管理服务选项 如图(一),然后点击下一步完成安装

图一

 

二、安装Web Deploy V3.6 

      下载地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=43717

      下载完之后直接安装,我选择的是完全安装选项

      v3.5的下载地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=39277

 

三、启动Web Deploy服务

     Web Deploy服务安装完毕之后一般默认情况下是没有启动的,我遇到的情况就是这样,在更改配置之前必须向将Web Deploy服务停止,如图二:

 

 

  图二

 

     更改服务配置的操作步骤: 打开IIS主页 - 管理服务 - 更改配置:启动远程连接选项勾上 如图(三)

 

图三

 四、开通防火墙入站规则的相应端口,如果在上一个步骤中你没有更改端口,那么默认就是8172,如图四

图四

图五

 

六、设置目标站点的IIS管理器权限,如图六

图六

 

 七、为目标站点的根目录文件夹添加LOCAL SERVICE用户,并设为完全控制的权限,如图七

图七

 

八、开启自动备份

     默认情况下deploy是没有打开自动备份的,那么开启自动备份的方法如下:

     1、打开windows的PowerShell 执行下面的命令转到“%programfiles%\IIS\Microsoft Web Deploy V3\scripts”目录

cd "C:\Program Files\IIS\Microsoft Web Deploy V3\scripts"

     2、检查当前PowerShell的执行策略,如果是Restricted 那么需要将它改为 RemoteSigned

Get-Executionpolicy

  //如果输出为:Restricted 那么执行下面的命令进行修改执行策略

Set-Executionpolicy RemoteSigned

  注意:上面命令会询问你是否要更改执行策略,你根据提示输入Y按回车

  关于PowerShell的其他设置可以参照官方的文档:https://technet.microsoft.com/zh-CN/library/hh847748.aspx

  3、执行下面的命令加载脚本:

. .\BackupScripts.ps1

  注意:如果加载成功,将没有任何反应,如果加载失败将会有红色的提示语句;

  4、通过TurnOn-Backups命令允许管理员开启或关闭站点的自动备份功能,这相当于一个总闸开关。

  允许配置所有的备份功能

TurnOn-Backups -On $true

  禁用配置所有的备份功能

TurnOn-Backups -On $false

  5、打开所有站点或者指定站点的自动备份功能

# 打开所有站点的备份功能
Configure-Backups -Enabled $true

# 打开foo站点的备份功能
Configure-Backups -SiteName "foo" -Enabled $true

  自动备份设置已经完成,关于跟多的自动备份设置请参照官方文档:https://www.iis.net/learn/publish/using-web-deploy/web-deploy-automatic-backups

 

到此为止在服务端上的操作就已经完成了,接下来以VS2015为例介绍在客户端上的操作。

 

第二部分、发布站点

 

一、在发布之前我们先来添加一个配置转换,由于本地的配置和服务器上的配置一般有所差异,所以添加一个配置转换解决差异的问题,在添加配置转换之前要先添加一个对应的解决方案配置,添加的方法如图八所示:

 

图八

 二、解决方案配置一般按照发布的目标环境命名,这样比较清晰是针对哪个服务器环境的,然后在解决方案的站点根目录下右键web.config文件,在弹出来的上下文菜单中添加配置转换,如图九:

 

图九

 

 最后的到多出了一个web.测试环境.config的文件如图十: 

 

图十

 

 三、在转换配置文件中添加有差异的配置节点,一般来说数据库连接,每个服务器环境都是不一样的,这里就以connectionStrings这个节点为例子简单说明一下,有关使用 web.config 转换的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=125889,如下图十一

图十一

 

 添加完成之后,您可以右键web.测试环境.config文件在弹出的上下文菜单中预览转换后的结果,如图十二

图十二

 

 四、发布和发布配置,右键web项目在上下文菜单中选择发布菜单,弹出的界面中选择自定义,我们这里还是输入测试环境,如图十三

 图十三

点击确定后会转到选择发布方法的界面,这里选择 Web Deploy,如图十四

图十四

这里面有几个参数需要说明一下的:

1、服务器:测试环境的服务器IP地址,在这里就是本文的第一部分介绍的服务器IP地址了

2、站点名称:发布的目标站点,这里就是本文第一部分介绍的在服务端创建的DeployTest站点

3、用户名:目标站点允许的用户名,这里就是本文第一部分介绍DeployTest站点添加的Test用户

4、密码:用户名的密码

5、目标URL:网站的主页,这个选项是可选的

6、验证连接:这个按钮是用来验证你填写的参数是否正确,如果一切都正常,那么点击下一页,进入到配置选择页,在这个操作界面要记得选择对应的配置,那么我们选择测试环境,如图十五

图十五

 

 来到最后一个页面就是预览了,当然你可以直接点击发布,也可以点击预览,选择性地发布,如图十六

图十六

 

 点击发布后系统开始连接服务器将对应的站点进行备份,然后再覆盖站点,到这里整个流程就已经完成了,谢谢您的关注和阅读!

 

转载于:https://www.cnblogs.com/Jackson-Bruce/p/5739001.html

IIS上部署Asp.net core Webapi 本篇文章将为您详细介绍IIS上部署asp.net core webapi的详细过程。 阅读详情

相关推荐

ASP.NET Core 使用IIS作为Web服务器,部署在IIS上

1.修改项目代码Program.cs文件替换为如下内容:public class Program    {        public static void Main(string[] args)        {            var host = new WebHostBuilder()                .UseKestrel()                .Use...

ujm097的博客 1万+

asp.net发布网站()

1.Web项目中点击发布网站,如图1所示 图1 2.选择要发布的路径——>“确定”,如果项目显示发布成功就可以了。如图2所示 图2 3.打开控制面板中的IIS信息服务管理器...

weixin_30702413的博客 173

PCL——KITTI数据集.bin文件转.pcd并可视化【2025最新版】

kitti数据集中的bin格式点云主要存储的字段为:`x`、`y`、`z`、`intensity`,对应于PCL中的PointXYZI。因此,只需将bin中的属性信息读取出来放入`PointXYZI`即可。本文给出简单易用的实现代码。博客长期更新,本文最近更新时间为:2025年1月11日。

点云侠的博客 3930

(超详细).Net项目一键发布到IIS

文章描述:在此之前,我一直习惯使用文件夹的发布方式,即在项目上右键->发布->文件夹。然后设置其相关属性,等vs发布完毕之后,自己再复制到服务器,很多时候还得需要先停止服务才能复制上去,感觉就很麻烦(虽然用习惯了);其实通过ftp的方式或许也可以,只是我不太喜欢,因为还得先去服务器去配置ftp等相关服务,而后这个ftp除了做这个好像也没其他用,再者,我并不能确定是否可以不手动停止服务就...

zls365365的博客 1950

使用Web Deploy发布网站并自动备份

服务器下载Web Deploy并安装,最好选自定义并全部安装 web deploy下载地址 安装后iis的配置过程 需要注意的是配置过程的“3. 配置iis webdeploy 用户”步骤中,图片里的第二步的启用远程连接下面的选项中记得选成windows凭证和iis管理器凭证 还有一件事情:这样配置下来的自动发布服务器重启就失效了,这里给个解决办法https://www.jiansh...

a616724623的博客 1611

webdeploy启用备份 msdeploy 启用backup

前提准备:完整安装Microsoft Web Deploy 3 下载页面:WebDeploy_amd64_zh-CN.msimsdeploy 同步站点命令所在目录C:\Program Files\IIS\Microsoft Web Deploy V3>msdeploy.exe -verb:sync -source:iisapp=<siteName> -dest:auto...

647

ASP.NET 创建、发布、使用Web服务的详细方法

一、创建Web服务 1.首先,打开VS(本例以VS2017为例)。创建一个ASP.NET Web 应用程序,位置和名称自定义,本例我把这个项目创建在桌面,名字叫helloWho。然后点击【确定】,在弹出的下一个对话框中,选择“空”,其他保存默认不变,最后点击【确定】,完成项目的创建。 2.右击项目名→【添加】→【新建项】,在弹出的“添加新项”对话框中,找的“Web服务”,给Web服务起...

stanmae的博客 7545

ASP.NET Core Web API发布部署IIS详细教程

安装 .NET Core 托管捆绑包(Hosting Bundle)在将 .NET Core 应用程序部署到 IIS 时是一个必要的步骤。Internet Information Services (IIS) 是一种灵活、安全且可管理的 Web 服务器,用于托管 Web 应用(包括 ASP.NET Core)。在生产环境中展示 Swagger 通常是不推荐的,因为它可能会暴露你的 API 文档,增加安全风险。因为发布后运行的环境属于。

专注于C#/.NET/.NET Core学习、工作、面试干货和实战教程分享。这里聚焦了大量的C#/.NET/.NET Core优质文章、开源项目、实用工具和学习、工作、面试心得。 4844

部署asp.net web api 应用服务器教程​

ASP.NET是微软开源的服务器端 Web 应用框架,具有功能强大、类库丰富、性能出色、安全可靠、可扩展性与可维护性良好等优势。本文以开发餐厅在线点菜微信小程序后台服务为例,介绍部署asp.net web api 应用服务器的过程。涵盖开发环境与服务器准备,利用 Visual Studio 新建项目、创建控制器及注意事项,项目发布、服务器设置步骤,以及在无可视化窗口情况下如何进行参数调试,旨在助力开发者顺利完成部署工作。

qq_41664964的博客 2691

关于ASP.Net——web项目的发布部署问题

关于ASP.Net发布 第一步,右击web项目点击发布: 然后点击新建配置文件 然后发布目标选择文件夹,路径是自动配好的不用管 然后点击发布,控制台出现成功即可,按住ctrl再右击蓝色地址即可跳转到所发布的文件夹的位置(实际上这还不算发布,只能算是把项目打包好了而已) 第二步,部署, 首先配置IIS服务器,打开控制面板→程序和功能→启用或关闭Windows功能,找到IIS相关的,然后照着打开就行 返回控制面板 →管理工具,双击打开IIS管理(或者直接搜索iis) 展开连接,添加网站 然后往下看,网站名

hyx1229的博客 5499

在IIS上部署ASP.NET Core Web API

对于本文,我想与您分享有关如何在IIS上部署ASP.NET Core Web API的指南。我将指导您安装Visual Studio 2019,.NET Core Runtime 3.0。我还确保我逐步引导您在服务器(Web IIS)中启用它,使用no受管代码选项创建新的应用程序池,创建ASP.NET Core Web API项目以及发布ASP.NET Core Web API。 了解...

寒冰屋的专栏 8351

ASP.NET Web Pages - 发布网站

本文提供2025年ASP.NET Web Pages网站发布的完整指南,涵盖三种主流托管方式: 阿里云/腾讯云Web应用托管(推荐):零配置一键发布,支持自动HTTPS/CDN/负载均衡,价格低至0-29元/月 传统IIS部署:详细说明本地准备4步骤和服务器配置7步骤,包含数据库迁移、安全设置等关键操作 国外托管平台:对比SmarterASP.NET、Somee.com等平台的特性与价格 文末提供「终极检查清单」和「一键发布包」,包含生产环境必备的Web.config优化、SSL配置脚本及部署文档,可实现3

m0_57545130的博客 625

Asp.net core 项目的发布和运行环境部署完整介绍(Window+IIS7)

这段时间在做一个某行业信息系统项目,项目采用前后端离,后端通过Web Api 与前端交互,支持跨域访问,除API,还包含Service层、Model层、ORM。层与层这间采用依赖注入。 WebApid引入了对其它层的程序集引用。整个项目只需发布WebApi和Web站点就可以了,两个项目可以部署在不同的服务器。身份验证通过令牌与OpenId达到跨域访问目的。 ...

lixuezhi的专栏 1万+

【车载以太网测试从入门到精通】系列文章目录汇总

物理层测试、数据链路层测试、以太网交换机测试、网络层测试、传输层测试、以太网TCP/IP协议自动化测试、以太网网络管理测试、以太网网络管理自动化测试、鲁棒性测试、SOME/IP测试、SOMEI/IP服务接口自动化测试、DoIP诊断测试、DoIP诊断自动化测试、DoIP BootLoader刷写、以太网网关路由测试、以太网网关路由自动化测试、AVB测试。

测试领域技术分享 3078

西安电子科技大学msp430实验室一手资料

西安电子科技大学msp430实验室一手资料 msp 430g2553 案列精讲

上一篇: jQuery.fill 数据填充插件
下一篇: 关于NuGet
Jasky2011
博客等级 码龄10年 0粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值