今天配置Web服务器的过程中,发现了一些有趣的事情。刚部署的服务器,使用的是64为版本的Windows server 2003企业版。按照一贯的做法,配置数据库,配置web.config中的连接字符串,做访问权限设置,验证方式.......最后检查IIS服务器的ISAPI映射
,使用.NET Framework中的工具注册iis的时候,问题出现了。其实Windows xp后续的版本,系统都会内置捆绑有一个版本的.NET Framework(这可能是微软的一贯策略吧。呵呵。),但是根据公司系统的需求,我应该注册映射最新版的.NET Framework 4.0,可是当我像平时一样,在命令提示行中注册iis的时候,提示报错了。原因很简单,aspnet_regiis.exe 是win32应用程序,在64位版本无法正常运行。由于之前一直使用的都是32位版本的服务器,所以感觉有点棘手了。以下便是个人总结的解决办法。
1、因用模版安装ASP.NET 2.0需先卸载64位的.net2.0
命令:C:/WINDOWS/Microsoft.NET/Framework64/v2.0.50727/aspnet_regiis.exe –u
2、把IIS切换为32Bit模式运行
命令:Cscript C:/inetpub/adminscripts/adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
3、重装安装32Bit .NET 2.0
命令:C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/aspnet_regiis.exe -r