代码改变世界

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

2008-05-17 10:26  齐天大圣  阅读(425)  评论(0编辑  收藏  举报
今天给一朋友调试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 ”有什么区别。方法二也已经测试通过,反正是在本机测试,安全性问题就不是那么重要了。