码迷,mamicode.com
首页 > 其他好文 > 详细

平台部署发布案例总结2014/07

时间:2014-10-22 15:52:02      阅读:326      评论:0      收藏:0      [点我收藏+]

标签:blog   http   io   os   ar   使用   for   strong   sp   

 

/**************************<< 平台部署发布案例总结2014/07 >> ****************************/

 

VS.NET WEB项目/网站 部署和安装概述

 

1. Net. WEB项目分类

   WEB项目结构分为Web Application Project (web,services,wpf,mvc..) 和Web Site Project

 

主要的差异在 Web Site Project 可以不必编译就可以修改程式看到結果, 而Web Application Project使用了增量编译模式,仅只有文件被修改后,这部分才会被增量编译进去, 先編译然后才可查看结果,我们的平台(PlatForm)采用Web Site的方式.

但Web Site Project 虽然不需要编译,可是程式的代码因为未经编译成DLL的过程,可能导致会让代码外洩,会生成随机的程序集名,需要通过插件WebDeployment才可以生成单一程序集.

使用webApplication的方式,可以指定网站项目生成单一程序集,因为是独立的程序集,所以和其他项目一样可以指定应用程序集的名字、版本、输出位置等信息, 也可以将网站拆分成多个项目以方便管理, 它还支持VSTS的Team Build, 方便每日构建, 可以对编译前后进行自己规定的处理,对App_GlobalResources的Resource强类支持等.

 

建议一般采用webApplication的方式建站.

 

2. VS WEB发布安装可分为三种方式:

 1. 创建Web安装部署项目, 生成web.Setup安装包,用于产品版本发布

 2. 直接发布网站(适用于web site站点).

 3. 插件部署(PluginInstaller,  aspnet_compiler.exe, WebDeploy…)

  

发布历史:

             1. Vs2003下的网站生成后可以生一个唯一的命名程序集(项目名称.dll)

            2. Vs2005,Vs2008默认为每个webSite或页面随机命名的App_web xxx.dll.., 如果不采用预编译的方式那么产生的文件会更多,这样会给想Copy Patse方式的更新带来不便.所以可以用三方插件的方式打包部署.

             3. Vs201X 出于这个原因所在VS2010后的版本中,VS已经自带有发布署的功能.对于VS2005,2008或转换的旧版本还是要借助于WDP这个小工具进行打包发布.

 

3.  插件部署(WebDeploy)    

Web Deploy 安装

        客户端需要安装打包插件(webDeploymentStep for vs2010):

      http://download.microsoft.com/download/A/E/3/AE317298-AA5B-4328-B2F8-5B8E51F0917B/WebDeploymentSetup.msi

        服务端组件安装(web Deploy V3.X):

      http://www.microsoft.com/zh-cn/download/details.aspx?id=39277

 

       优点:

        1.合成aspx下cs,appcode下cs及web下的cs文件,可以使网站安全并且使网站性能提高

2.可以及时发现一些认为不是很大的错误,在生成网站或生成解决方案时忽略的错误等,尤其是一些不合伦理的继承类,以及一些文件重名。

 

  1. 4.  案例分析之----TianYi平台项目WebDeploy打包步骤

 

    Tianyi Web站点采用的是Web Site的建站方式,在不需要转换项目迁移的情况下,应采用插件WebDeploy方式部署.

 

   4.1 站点项目首选使用Release配置

      bubuko.com,布布扣

  

4.2 使用web Deployment Project..方式打包.

 bubuko.com,布布扣

     填写输入生成网站包及目录的名称[如:WebDeploy]

      bubuko.com,布布扣

 

   4.3 配置WebDeploy属性.

Output Assemblies中的四大选项:(建议选择第三项[可起名为:OperateDLL.dll等])
1,  Merge all outputs to a single assembly-所有输出都编译成一个程序集(参数: 程序集名称)
    Treat as library component (remove the App_Code.compiled file) -App_Code视为类库(删除App_Code.compiled文件)

2,  Merge each individual folder output to its own assembly -WEB项目中单独的目录会编译到一个.程序集中(参数: 程序集前缀)

3,  Merge all pages and control outputs to a single assembly -所有页面UI编译到一个程序集中其它控件,资源文件等编译到别外一个程序集中。(参数: 程序集名称)

4,  Create a separate assembly for each page and control output -为每一个页面和控件创建程序集

 

 bubuko.com,布布扣

 

  4.4 配置更新或替换Config文件设置(可选)

      Enable Web.config file section replacement

你可以在开发时用自己的web.config设定,但是在部署的时候动态替换成另一个web.config的内容,例如你可以替换appSettings或connectionStrings的内容

 

 bubuko.com,布布扣

 

4.5 生成部署包.. 或 生成项目 [WebDeploy.ZIP 和PackageTmp文件]

bubuko.com,布布扣

     

 bubuko.com,布布扣

 

 

4.6 服务器部署或更新.

 bubuko.com,布布扣

   服务端启用Web Deploy服务

 

 

 

自动更新—VS201x自带的发布包可进行远程生动更新.

 手动更新--导入导出操作

1. 对于新发布的网站需要导入操作[WebDeploy.ZIP]

2. 对于更新的网站也可以导入[附加操作],或者手动[WebDeploy.ZIP]

3. 手动Copy + Paste操作[对于少部分文件,可更新Bin中的dll,或修改的页面aspx文件等资源文件]

 

     1. 导入ZIP文件:

      

      bubuko.com,布布扣

bubuko.com,布布扣

 

     

 

  

2. Copy + paste部分更新:

     

     对于少部分更新文件,可用于Copy操作[请从部署包中选择需要更新的文件: …\obj\Release\Package\PackageTmp\]

     从PackageTemp文件夹中Copy BIN文件下的dll文件,或修改后的aspx页面文件或其它资源文件.

         

 bubuko.com,布布扣

 打包后的aspx页面的区别就是多指向了”xxxx, OperateDLL”这个程序集. 

 

 

  设置WEB站点虚拟目录并加入读写用户权限IISUser等

 

 

  1. 5.  数据部署

   

   数据项目脚本发布/迭代/更新..

 

  

  

   

平台部署发布案例总结2014/07

标签:blog   http   io   os   ar   使用   for   strong   sp   

原文地址:http://www.cnblogs.com/smileberry/p/4043346.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!