今天在给一台老服务器升级Asp.net程序.旧的程序是用.net1.1下写的,由于是阶段性升级,因此需要保留部分旧程序.
之前接触过少许.net framework的升级工作,一般都是全部部署新版本的程序,因此都只是装下.net framework2.0,然后在IIS中设置下ASP.NET版本即可.
这次的升级则比较麻烦,需要两个版本的程序同时存在,需求简述如下:
有A,B网站:SiteA,SiteB,其中A站点为1.1版本程序,B站点为2.0版本程序.在A站点中,有虚拟目录DIR,B站点也定位到DIR.在DIR中,存在A.aspx和B.aspx,其中A.aspx为1.1程序,B.aspx为2.0程序.
首先是先给对应的目录设置ASP.NET的版本,给SiteA设置.net1.1,给SiteB设置.net2.0,DIR目录,因为含两个版本,所以选择.net2.0.这个时候如果我们就去访问的话,将会收到如下的出错提示:
按照提示,我们知道,是因为两个版本的程序不能在同一个进程里,我们需要做的就是在IIS中多添加一个应用程序池.如果DotPool2.0.然后把所有的.net程序的应用程序池设置为它,然后再浏览,这次就没有问题了.