iis 启用32位应用程序 没有

iis 启用32位应用程序 没有,第1张

做web服务迁移,从32位win2003迁移到64位win2003,数据库是32位Oracle在另外一台服务器上。

迁移之后数据库各种连不上,oracle的客户端32位的装完装64位的,odp.net也是各种装,已过一段实验数据库连接工具终于连接上数据库了,可是64位的iis还是连接不了数据库。一会儿32位一会儿64位,本来oracle就不熟客户端还特别的大,没有闲功夫研究它了。让我们用一个最简单最不负责任的办法解决它吧,哼哼。

让64位系统下的iis 改成32位运行。

IIS7 很简单,在网站对应的应用程序池上右键高级设置,常规 里的 启用32位应用程序 改为 true 就可以了

IIS6稍微复杂一些,

1,命令行里运行

cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

即修改IIS配置,允许32位程序运行

2,重新注册.net frameWorks

%SYSTEMROOT%\Microsoft.NET\framework\v2.0.50727\aspnet_regiis.exe -i

3,完成之后,IIS的Web服务扩展,会多出一个32位的asp.net将其设置为允许。这样就可以了,问题是IIS上所有的站点就都以32位兼容方式运行了,呵呵。

4,之后有可能出现Service Unavailable错误。有可能是ISAPI筛选器错误,可以看一下系统日志。解决方法:打开iis-->查看“网站”的属性--->ISAPI 筛选器-->把有向下的红箭头的项删除掉-->重启iis-->OK 。不OK就把网站属性主目录配置里面的ISAPI筛选器也都删除掉就OK了。

由于64位 *** 作系统不支持Microsoft OLE DB Provider for Jet驱动程杏爆也不支持更早的Microsoft Access Driver (*.mdb)方式连接。

所以用于 Access 和 Excel 数据库的 Microsoft OLE DB Provider for Jet 在 64 位版本中不可用,也就是说,如下两种连接字符串都已经无法正常工作了:

"Provider=Microsoft.Jet.OLEDB.4.0Data Source="&Server.mappath(db)

"driver=Microsoft Access Driver (*.mdb)DBQ="&Server.MapPath(db)

解决:既然这样,就只能使用一个办法,将IIS的运行环境设置为32位:

原因:没有设置正确造成的。

1、打开控制控制面板,打开步骤,开始-》控制面板。

2、点击控制面板,进入控制面板主界面,在控制面板主界面当中,找管理工具

3、双击管理工具,打开管理工具窗口,在窗口中找到“Internet 信息服务(IIS)管理器”,如图所示。

4、双击打开“Internet 信息服务(IIS)管理器”,就打开的了IIS的管理窗口,在左边栏树形节点中,可以看到应用程序池和网站两个子节点。

5、点击打开应用程序池,右键单击右侧窗口中选项,选择打开“高级设置”。

6、将启用 32 位应用程序改为“TRUE”就完成了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11083805.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存