IIS7下运行Access+Asp的解决方法
, F& e0 S i n2 P, [% L/ u0 ?IIS7下面运行Asp+Access数据库,无法运行。* K. w; s, n$ A! t' A+ v4 a
在goole、百度里搜了半天,没有搜到解决办法。在远景看到有几个人问,似乎有一个人声称自己成功了,然而却没有给出方法。. V/ Z7 o. h# c, C+ N. T
今天突然心血来潮想起到微软网站上搜了下,终于让俺发现解决方法了。/ P2 C" W) e. B
原文:
, L4 u7 t6 E1 O; Y% a-------8 j$ C$ B; G% _+ ]
By adding appropriate ACL for the user to %windir%\ServiceProfiles\NetworkService\AppData\Local\Temp should resolve this issue. ( T, v, O' N: `5 o7 q4 ]* J# m% j
-------" D# y, @. a) Z2 \. d/ z& ]
但是,俺没有明白它说的ACL是什么意思。只好自己测试给temp目录添加用户权限许可。发现经过多测发现:
( v- P, r7 o1 Y2 v4 V& H3 e6 j$ b' d只需要给“系统盘:\windows\ServiceProfiles\NetworkService\AppData\Local\Temp“这个目录添加一个"Autheticated Users“的读写许可即可以了。3 R2 D) I( s9 Q2 m5 m% V. c: _
具体做法是:鼠标右键单击temp目录,选择properties》security》edit》add》选择"Authenticated Users",选择“Full Control“就可以了。
9 J1 M# y% c4 A x0 u! I; _* G( ]8 S
另一个方法是:
# }* ?5 @- |, N$ q: i修改:
) B. v Z& j. W) X$ s4 OC:\Windows\System32\inetsrv\config\applicationHost.config
* h$ ]. h) L1 q9 _8 Y6 x2 V* n该文件第108行原文:
! q' v0 J$ r# i7 A<processModel identityType="NetworkService" />( R0 z r( u: e% G4 U* B
修改为:6 @0 B. g+ q7 K C* G% v8 [
<processModel identityType="NetworkService" loadUserProfile="false" />: L- X+ v+ ^8 F3 U
6 x: ?, R2 l6 l- O发生这种情况的原因是因为MS Jet数据引擎更改了临时目录位置。所有需要给该temp目录权限。方法2通过不加载用户验证配置来解决,失去了IIS7的安全改进,所有方法1是王道。但是,方法1是俺验证得出,应该没有问题。但不知道和那个“adding appropriate ACL ”有什么区别。