zoukankan      html  css  js  c++  java
  • ASP.NET2.0中WEB应用程序的部署

       在我们建立完一个WEB应用程序后,我们就要考虑如何进行部署和发布。一般情况下,尽可能将安装简单化,以使用户有非常好的用户体验。但有的情况下,可能对安装程序的要求比较高,比如有时要将一些安装配置信息写到注册表中去。而对于一个WEB应用程序,该如何安装部署呢?这和安装部署一个普通的 WINFORM下的应用程序有些不同。以往,对于WEB应用程序的安装部署总是十分困难的,但自从ASP.NET 1.1起,直到现在出现的ASP.NET 2.0,安装部署WEB应用程序将变得十分简单方便。本文将着重介绍在ASP.NET 2.0下,如何使用visual studio .net express beta/visual studio 2005,对WEB应用程序进行安装部署。
      
      首先,我们看下,WEB应用程序一般包括什么。一个WEB应用程序,一般包括有WEB 页面(.aspx文件和HTML文件),各类配置文件(如web.config),各类相关的资源文件,还有各类包括业务核心代码的源代码文件,这些文件一般会放在WEB服务器的一个虚拟目录下。由于ASP.NET是采用编译架构的,因此还包括编译后的各类DLL文件,这些DLL文件放在BIN目录下。对于部署WEB应用程序,在.NET 2.0中,可以采用以下的几种方法:
      
      1、使用XCOPY部署
      
      2、使用Visual studio的Copy Web Site功能部署
      
      3、使用visual studio的Precompilation预编译部署
      
      下面对上述的三种方法分别予以介绍:
      
      使用XCOPY部署
      
    首先,我们先使用visual studio express 建立一个WEB SITE,选择VB.NET或者C#,之后建立一个名为deployment的应用。在这个应用中,由于我们的目的是着重安装部署,所以可以随便拉一个按钮,然后在这按钮的onclick事件中,写入一些屏幕输出之类的语句就可以了。
      当编译该程序后,我们开始使用XCOPY来部署应用程序。 XCOPY是.NET在应用程序的部署方面的最简单方法。XCOPY简单地将你的WEB应用程序的所有文件拷贝到目的服务器的指定路径下,比如,使用命令如下:
      xcopy d:\intetpub\wwwroot\myprojects\developer\deployment c:\temp /e /k /r /o /h /I
      
      执行后,结果如下图,会将当前的应用deployment的所有文件拷贝到c盘的TEMP目录中去,之后,在IIS中创建虚拟目录,指向该目录就可以了。关于XCOPY的使用方法,请参考具体的相关命令帮助。
       pg>
    在ASP.NET 2.0中,提供一种更新的编译部署方式,叫Precompilation deployment(部署预编译)。Net Framework 2.0提供了一个命令行的工具(aspnet_compiler.exe),可以将WebApp中所有的代码、页面(包括HTML)、静态文件全部编译进 dll,然后进行部署,得到的目标系统中,只包含编译后的dll,甚至连HTML页面文件都是不存在的,大大增强了系统的安全行,但是浏览起来和普通的 ASP.NET 应用没有任何区别。使用方法如下:
      
      aspnet_compiler.exe一般在WINNT目录下的.net framework 2.0子目录下可以找到,使用格式为:
      
      aspnet_compiler -v /<websitename> -p <source> <destination>
      
      其中,websitename为你要部署的web应用程序的虚拟目录名,<source>为你要部署的web应用程序的物理路径,〈destination>为即将部署的应用程序的目标物理路径,比如:
      
      aspnet_compiler -v /Deployment
      -p c:\inetpub\wwwroot\myprojects\Developer\deployment c:\compiled
      
      则所有的文件都会被部署预编译到c盘的compiled目录下,而且该目录下,你会发现没有任何的代码文件和HTML文件了。
      
      小结
      
      本文简单介绍了在ASP.NET 2.0中,提供的三种对WEB应用程序进行部署的方式,并介绍了它们各自的特点。而对于.net 2.0中的更深入的讨论部署安装的问题,请参考MSDN。
  • 相关阅读:
    leetcode 268. Missing Number
    DBSCAN
    python二维数组初始化
    leetcode 661. Image Smoother
    leetcode 599. Minimum Index Sum of Two Lists
    Python中的sort() key含义
    leetcode 447. Number of Boomerangs
    leetcode 697. Degree of an Array
    滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(1月3日)
    北京Uber优步司机奖励政策(1月2日)
  • 原文地址:https://www.cnblogs.com/hutie1980/p/954363.html
Copyright © 2011-2022 走看看