首页 > 技术那瓷碗饭 > 域控制器下应用程序池模板永久性缓存初始化失败

域控制器下应用程序池模板永久性缓存初始化失败

2013年6月14日 发表评论阅读评论

在2003域控制器上安装了IIS6,确切来说是把运行IIS6的2003变成了域控制器。公司有着网络使用规定,如员工有违反且被路由器规则检测出来 后,会给于指定的提示。公司固定IP并绑定MAC,写几个简单的ASP文件把非法IP地址、访问时间、次数和频率写入入库备查,弥补路由器日志无法满足要 求的情况。

上面交代一下出错误环境。当我有问题和朋友讨论时,朋友一向说,草你就不应该那么做,你该把这东西移植到别的地方。这可不是解决问题的正确方法。另外我从网上找到了不少解决办法,都未能解决——但说的却那么言之凿凿,真怀疑他们是否真的解决了问题。

事件类型:    错误
事件来源:    Active Server Pages
事件种类:    无
事件 ID:    5
日期:        2013-6-14
事件:        7:54:27
用户:        N/A
计算机:    DC
描述:
错误: 应用程序池 ‘DefaultAppPool’ 的模板永久性缓存初始化失败,这是由下列错误所导致: 无法创建应用程序池的磁盘缓存子目录。数据可能包含额外的错误代码。。

有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。
数据:
0000: 05 00 00 00               ….

如果只是想解决问题,可对问题不求甚解的话,复制下面代码,CMD里运行一下,问题就解决了。

cacls "%windir%\system32\inetsrv\ASP Compiled Templates" /g "Authenticat
ed Users":c /e

iisrestart

分析问题和解决问题

上面是我通过分析总结的解决办法。想知道是怎么分析出来的,那就继续朝下看。依照日志提示内容,我从网上找到了千篇一律的解决办法,就是把三个文件夹给于指定用户组的相应权限。

为避免产生误导,内容我就不复制了,我把解决办法应用在域控制器上,问题并没有得到解决。于是我在一个干净的2003虚拟机里安装了IIS6,启用并确保ASP程序正常运行无错误日志。又登录到公司托管在机房里运行一直良好的2003服务器——虚拟机在域下,而托管服务器是独立。

对比发现IIS工作进程组:IIS_WPG的组成员都不一样,网上说的解决办法肯定行不通。正如下图A是独立服务器上的组成员,B是升级为域控制器后组成员。

IIS_WPG用户组的不同

域控制器上的和普通服务器上的IIS_WPG用户组

既然是“无法创建应用程序池的磁盘缓存子目录”那么这个“磁盘缓存子目录”在哪里?我在IIS6管理器里找到了

ASP缓存目录

ASP缓存的目录位置

把ASP Compiled Templates文件夹给于用户组Authenticated Users的更改写入权限。通过重启IIS测试,问题解决,系统不在报日志错误。Authenticated Users组包括在计算机上或活动目录中的所有通过身份验证的账户。

  1. 2013年6月16日13:10 | #1

    配置域真是件很麻烦的事,折腾的恼人

  2. 2013年6月16日11:22 | #2

    虽然不是很懂 但还是支持一下

  3. 2013年6月14日21:20 | #3

    不得言老哥,我是赵彦刚,你有回访过我的博客,今天看你更新文章了,给些支持哈,希望能够认识下,我的QQ:31809890

  1. 本文目前尚无任何 trackbacks 和 pingbacks.

www.tjzhihe.com www.yxtcgLj.com www.yzbogu.com