李刚
摘要:随着计算机硬件高速发展,网络技术也是日新月异,个人电脑的操作系统也迅速从X32跳跃到X64,当然对于支撑一个学校或公司的WEB服务器操作系统也从Windows 2003 Enterprise Edition X32发展到Windows 2003 Enterprise Edition X64,在到Windows 2008 Enterprise Edition X64。是不是操作系统的版本超高越能更好的支持网站的高效运行呢?该文将对作者个人遇到的问题进行阐述。
关键词:ASP;X64;X32;ASP网站;IIS;Windows 2003;数据库链接
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2014)10-2231-02
近年来,随着计算机硬件和网络技术的飞速发展,在加上我国各级政府对推进教育信息化建设的大力支持。特别是经济发达的地区,比如深圳,基本上每一所学校都有自已的对外门户网站、各种资源型网站和形式多样的交流平台及OA系统。以上这些系统要想在学校的服务器里正常运行给全校师生及学生家长提供服务的话,网管们可要精心的照料好网络中心的服务器了,否则她会向你展示形式多样的撒娇动作噢!
我单位的WEB服务器使用的操作系统是Windows 2003 Enterprise Edition X32,网站的工作模式使用的是ASP+Access。为了更好的发挥学校网站的功能,更好的为学校师生服务,原来使用的WEB服务器的硬件配置已经不能满足现有网站的需求啦!最近学校终于新买回了一台新的服务器。操作系统也是Windows 2003 Enterprise Edition X64,当时我看到这些配置时还是很开心的,终于可以给学校网站搬个新家了。于是我就开始动手安装并配置IIS6.0啦!(在安装IIS6.0时,我把Active Server Pages组件也安装了,如图1)为了防止IIS6.0中默认网站的干扰,我把默认网站删除,新建一个专用网站名称并在E盘上新建一个网站专用文件夹。现在终于开始正式配置IIS了,先为新网站增加了一个没有用过的IP,把网站的主目录定向好,并在应用程序设置中配置了启用父路径,在把启用默认内容文档Index.asp设置为最顶,并将IIS的WEB服务扩展中的Active Server Pages设置为允许。自此,IIS算是配置完成了,此时,在IIS的WEB服务扩展中Active Server Pages和ASP.NET v2.0.50727都在允许状态。(如图2)于是我就把网站设为启动状态准备测试网站了。我先在IIS中浏览一下,结果大失所望,又马上启动IE,输入网站IP,还是涛声依旧。(如图3)
此时郁闷极了,我就开始寻找IIS在新旧两台服务器上的配置有没有什么不同吗?一项内容一项内容的比对,比对了好半天,两台服务器的IIS配置完全一样啊(IP除外)! 完全就是克隆版的IIS。难道和操作系统有关吗?两台服务器也只有操作系统有些区别了(一台是X64的IIS,一台是X32的IIS), Windows 2003 Enterprise Edition X64版本的IIS并不提供Microsoft OLE DB Provider for Jet驱动支持,所以,如果想在64位windows下使用asp或者asp.net连接access,需要将IIS以32位的模式进行连接。于是动手把x64的IIS转为X32的工作模式,操作步骤如下:
1) 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。
2) 键入以下命令启用 32 位模式:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
3) 键入以下命令,安装 ASP.NET 2.0(32 位)版本并在 IIS 根目录下安装脚本映射:
%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i
4) 确保在 Internet 信息服务管理器的 Web 服务扩展列表中,将 ASP.NET 版本 2.0.40607(32 位)的状态设置为允许。(如图4)
以上步骤操作完成以后,我迫不及待的去测试网站,先在IIS中浏览一下,主页面显示没有问题,然后在IE中输入IP测试,主页面也是一切正常,我以为自此大功告成,其不知,当打开主页面的具体链接内容时又出现了新的提示(如图5)。
数据源又出现了问题,经过对数据库访问权限的排查,问题就出现在Everyone用户和Internet来宾用户(IUSR_计算机名)的权限分配上。如果为Everyone用户分配完全控制或读取写入权限时,问题一样可以得到圆满解决,访问数据库时一切正常,但是从对网站安全方面考虑的话,最好不要给Everyone用户分配完全控制或读取写入权限,只需要给Internet来宾用户(IUSR_计算机名)分配读取写入权限即可达到目的。
参考文献:
[1] Windows Server 2003服务器搭建、配置与管理/刘晓辉主编[M].北京:中国水利水电出版社,2004.