asp.net 发布网站和打包网站的区别

2024-12-26 19:58:14
推荐回答(2个)
回答1:

发布网站:发布网站的意思就是把你做的网站里面的后台代码编译成dll文件以及一些类库都生成dll文件,也就是让源码隐藏,人家只能看你的前台程序,发布好的网站可以挂大IIS上,供别人浏览。
打包网站:打包网站其实是把网站生成的dll文件放到一个项目里面然后生成一个.msi或者.exe可执行文件,你只需要执行.msi文件就会自动的安装网站,安装网站的时候会让你填写虚拟目录,它会自动的安装到本地的IIS上,你可以通过虚拟目录访问。

回答2:

当我们使用VS2005开发工具开发网站项目的时候,我们都会遇到:在“生成”菜单有“发布网站”和“生成网站”两个菜单项!

  那么,发布网站和生成网站,有什么区别呢?

  生成网站,指的是编译您的网站项目;这个时候,CS文件是不会被编译成为DLL文件的,同时,CS文件也不会消失;该过程,简单的来说,就是预先编译网站的程序,让没有出现任何错误的程序经过编译,当浏览页面的时候,直接运行程序,加快程序执行速度和提高网页的显示速度,但是,网站中的CS文件,是可以打开来查看源代码的。

  而发布网站就存在质的区别了。简单的来说,发布网站允许您将网站发布之后(可以选择一个目录进行发布),可将发布目录中的程序或网站资源,上传到服务器、或复制粘贴到其它机器上面,之后,设置好IIS等Web服务器,该目录的网站即可运行。

  发布网站的过程,可以将网站中所有的CS文件通过编译之后生成对应的DLL文件,一般在Bin目录里面,同时,CS文件会自动消失;因为CS文件都被编译到DLL动态链接库了,所以就没有必要保留了,因此,发布网站之后,CS文件就没了,但是,由于DLL里面事先就编译好了CS,并且确认了哪个 ASPX文件应该调用哪个CS文件,所以,整个网站,一般仅存在ASPX文件和DLL文件和部分必要的文件,当然,还有网站资源,如图片、音乐、视频等对象。

  这个时候,DLL里面的CS文件是无法看到的,即使使用任何工具打开,也是乱码,这是加密了的,起到一定的安全作用;也可以这样认为,DLL文件是可用不可看的。

  当然了,发布网站这个过程,是相当复杂的,上面仅简单的作一个说明。它还包含将项目打包成安装程序、各种文件的引用、调用等一序列复杂的问题,在此,就不过多阐述了。

  总之,如果您想让您的网站项目能够在其它计算机上或服务器上正常运行,就选择“发布网站”,如果您只想在本机测试程序,就使用“生成网站”。