windowns7系统中IIS启用32位应用程序
Q1:我的windows7(64位)系统里面没有安装IIS?
A:系统默认是没有安装IIS的,需要你手动安装。
依次打开:控制面板\程序\程序和功能,选择我们需要的功能,asp,asp.net等选项的勾都打上。
Q2:我访问添加的网站,返回了“AnerroroccurredontheserverwhenprocessingtheURL.Pleasecontactthesystemadministrator”错误?
A:这个是因为你的程序某处有错误而产生的。并且IIS没有返回具体产生错误的原因。
需要在IIS中设置一下:
在左侧的目录树中选择你的网站,在右边的IIS分类下,找到并打开“ASP”:
展开“编译\调试属性”并设置“将错误发送到浏览器”为True(同时请注意将“启用父路径”选择为True)
Q3:我又有了新的问题:“不允许的父路径”
A:(见Q2)
Q4:“未指定提供程序,也没有指派的默认提供程序。”
A:这是由于你的系统是64位的,而64位操作系统不支持MicrosoftOLEDBProviderforJet驱动程序,也不支持更早的MicrosoftAccessDriver(*.mdb)方式连接。
Microsoft网站有如下说明:(见:http://msdn2.microsoft.com/zh-cn/library/ms141766.aspx)
用于Access和Excel数据库的MicrosoftOLEDBProviderforJet在64位版本中不可用。也就是说,如下两种连接字符串都已经无法正常工作了:
"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Server.mappath(db)
"driver=MicrosoftAccessDriver(*.mdb);DBQ="&Server.MapPath(db)
在64位windowns7系统中连接ACCESS数据库:
打开左边的“应用程序池”,右击右边的“DefaultAppPool”,选择“高级设置”,设置“启用32位应用程序”为“True”
因此,我们不得不修改IIS运行环境为32位:
另,SQL数据连接则可以在Windows7-64位机上运行,链接字符串为:
"PROVIDER=SQLOLEDB;DATASOURCE="&SqlLocalName&";UID="&SqlUsername&";PWD="&SqlPassword&";DATABASE="&SqlDatabaseName
Q5:“磁盘或网络错误”或“未指定的错误”
MicrosoftJETDatabaseEngine错误'80004005'未指定的错误MicrosoftOLEDBProviderforODBCDrivers错误'80004005'[Microsoft][ODBCMicrosoftAccess驱动程序]磁盘或网络错误。A:产生这样的错误是由于IIS没有读取IE缓存的权限而引起的。(错误取决于你使用哪种方式连接Access数据库)只需设置缓存目录的权限即可:
打开文件夹:(注意,AppData文件夹是隐藏文件夹)
C:\Windows\ServiceProfiles\NetworkService\AppData\Local\
在Temp上点击右键,依次点击“属性”、“安全”、“编辑”、“添加”,然后输入“AuthenticatedUsers”并点击确定。然后在AuthenticatedUsers的权限里面,设置“完全控制”和“修改”的权限。
Q6:Q4、Q5的问题我都解决了,但运行asp仍然提示错误
A:此时,估计你的Access驱动已经损坏,需要重新安装或者重新注册msadds.dll(OLEDBDataShape)提供程序了。
在运行里面输入下面的命令即可:
(64位系统的命令)REGSVR32"C:\ProgramFiles(x86)\CommonFiles\System\OleDB\MSDASQL.DLL"(附:32位的命令)REGSVR32"C:\ProgramFiles\CommonFiles\System\oledb\MSDASQL.DLL"
Q4:windows 7的64位系统下面配置IIS7都好了,但还提示404错误,找不到文件,怎么办。
A:此时,估计你还没有设置网站的默认首页文件,你可以进默认文档,可以添加一下你网站的首页文档。