一套老旧ASP+Access的复活记

  • 时间:
  • 来源:网络

    系统运维

因公司种种业务需要,需要在机房某台Winserver2008R2服务器的IIS7环境下复活一套ASP+Access的老旧信息化系统,考虑到该服务器本身已有一套ASP+MSSQL的系统线上一直运行正常,想必应该很容易搞定,当即就建了一个二级目录,将全套相关文件拷贝了进去,配置了下相关目录权限后运行之,系统一直在反复而坚定地报同一个错误:

错 误 号:-2147467259
错误描述:未指定的错误
错误来源:Microsoft JET Database Engine

依次做了如下排查:

该ASP网站ACCESS数据库所在目录及有关特别的config目录赋予用户读写及修改权限,甚至在调试期间,一度将整站赋予了everyone完全控制,未果;

设置启用IIS--ASP的父路径:

设置运行该站点的程序池启用32位应用程序:

权限权限,还是权限问题:
自不必说:C:\\Windows\\temp 目录需要IIS_IUSRS完全权限,还有一种说法是:IIS7下的32位MS Jet引擎临时目录位置:C:\\Windows\\ServiceProfiles\\NetworkService\\AppData\\Local\\Temp 也一并授权处理过了。

后来在一次无意中点击:

无法验证对web站点本地物理路径的访问?

立即做了如下设置:

至此再去试了一下:ASP+Access已可正常访问,问题完美解决。

小结一下:没有更改上述此项设置之前,为什么之前那套Asp+MSSQL一直运行正常,唯独这套ASP+Access就不行?官方解释如下:

服务器配置为将传递身份验证和内置帐户一起使用,以访问指定的物理路径。但是,IIS 管理器无法验证此内置帐户是否有访问权。请确保应用程序池标识具有该物理路径的读取访问权。如果此服务器加入到域中,并且应用程序池标识是 NetworkService 或 LocalSystem,则验证<domain>\\<computer_name>$ 具有该物理路径的读取访问权,然后重新测试这些设置。

新网虚拟主机