ASP.NET2.0中WEB应用程序的部署
点击次数:34 次 发布日期:2008-11-27 02:18:50 作者:源代码网
|
源代码网推荐 在我们建立完一个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:intetpubwwwrootmyprojectsdeveloperdeployment c: emp /e /k /r /o /h /I 源代码网推荐 源代码网推荐 执行后,结果如下图,会将当前的应用deployment的所有文件拷贝到c盘的TEMP目录中去,之后,在IIS中创建虚拟目录,指向该目录就可以了。关于XCOPY的使用方法,请参考具体的相关命令帮助。 源代码网推荐 ![]() 源代码网推荐 源代码网推荐 使用Visual studio的Copy Web Site功能部署 源代码网推荐 源代码网推荐 Visual studio的Copy Web Site功能,可以很方便地让我们进行WEB应用程序的部署和安装。使用该功能,可以将WEB工程复制到同一服务器或者其他服务器上,或者FTP上。但要注意的时,使用该功能时,仅仅是将文件复制到目的路径中去,并不执行任何的编译操作。 源代码网推荐 在Visual studio express 中,选择web-site菜单中的copy web site,将出现下面的对话框: 源代码网推荐 ![]() 源代码网推荐 其中,左边部分是源文件的路径(source web sites),右边部分是你将要部署的目的路径。留意一下右边的MOVE FILES下的下拉选择框,里面提供了三种文件的复制方式供你选择: 源代码网推荐 源代码网推荐 1、All source Web files to remote Web site(所有的WEB文件复制到远程的WEB站点中) 源代码网推荐 源代码网推荐 2、All remote Web files to source Web site(所有的远程WEB站点文件复制到本地站点) 源代码网推荐 源代码网推荐 3、Synchronize source and remote Web sites(同步本地WEB站点和远程WEB站点的文件)。 源代码网推荐 源代码网推荐 在使用时,先点击CONNECTING TO…旁边的小图标,弹出的对话框如下图: 源代码网推荐 ![]() 源代码网推荐 这里可以选择将你本地的WEB应用程序复制到什么地方,比如是选择FILE SYSTEM(本地文件系统),LOCAL IIS(本地的IIS服务器),FTP站点,或者是远程站点。在选择好目的路径后,就可以点选"COPY WEB SITE"按钮,系统会自动将应用系统的文件复制到目的路径中去,并显示复制后的日志记录。 源代码网推荐 源代码网推荐 使用Visual Studio的Precompilation预编译部署 源代码网推荐 源代码网推荐 ASP.NET 2.0中的一大新特性,是采用了动态编译,使到可以在编辑或者保存修改后的网页后,直接在浏览器中访问,而不需要再次编译,但这有个缺点,编译过程将导致第一次请求 ASP.NET 页面时的响应速度比后续请求慢,而在ASP.NET 2.0中,另外提供了预编译的功能(Precompiling),使用该功能,可以立即将结果显示给第一个用户,并且可以在批编译过程中检测到 ASPX 页面中的任何错误。但是,批编译确实会延长应用程序的启动时间,而且必须内置在 web.config 文件中。 源代码网推荐 源代码网推荐 而ASP.NET 2.0的预编译,又分为两种,第一种是In-place编译,该编译只需要在浏览器中输入http://站点名称/WebApp名称/PreCompile.axd,系统就会将WebApp里面所有的页面先给编译一遍,运行后如下图: 源代码网推荐 ![]() 源代码网推荐 在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:inetpubwwwrootmyprojectsDeveloperdeployment c:compiled 源代码网推荐 源代码网推荐 则所有的文件都会被部署预编译到c盘的compiled目录下,而且该目录下,你会发现没有任何的代码文件和HTML文件了。 源代码网推荐 源代码网推荐 小结 源代码网推荐 源代码网推荐 本文简单介绍了在ASP.NET 2.0中,提供的三种对WEB应用程序进行部署的方式,并介绍了它们各自的特点。而对于.net 2.0中的更深入的讨论部署安装的问题,请参考MSDN。 源代码网推荐 源代码网推荐 源代码网推荐 源代码网供稿. |




