IIS7下运行Access+Asp的解决方法

今天给一朋友调试blog,就在新安装的windows Vista下用IIS7调试,结果老是出错:数据库无法连接,请检查数据库设置。程序是ASP Access的。开始以为是因为没有装office无法加载MDB数据库的驱动,装了office也还不是行,就开始在网上查相关资料,终于给找到解决办法了。原文:
By adding appropriate ACL for the user to %windir%\ServiceProfiles\NetworkService\AppData\Local\Temp should resolve this issue. 但是,没有明白它说的ACL是什么意思。只好自己测试给temp目录添加用户权限许可。发现经过多测发现:
只需要给“系统盘:\windows\ServiceProfiles\NetworkService\AppData\Local\Temp“这个目录添加一个”Autheticated Users“的读写许可即可以了。
具体做法是:鼠标右键单击temp目录,选择properties》security》edit》add》选择”Authenticated Users”,选择“Full Control“就可以了。另一个方法是:修改:
C:\Windows\System32\inetsrv\config\applicationHost.config
该文件找到原文:
>processModel identityType=”NetworkService” /修改为:
>processModel identityType=”NetworkService” loadUserProfile=”false” /
发生这种情况的原因是因为MS Jet数据引擎更改了临时目录位置。所有需要给该temp目录权限。方法2通过不加载用户验证配置来解决,失去了IIS7的安全改进,所有方法1是比较好的。但是,方法1是验证得出,应该没有问题。但不知道和那个“adding appropriate ACL ”有什么区别。方法二也已经测试通过,反正是在本机测试,安全性问题就不是那么重要了。

有话要说