IIS里的网站打不开,报错HTTP Error 503. The service is unavailable. 系统日志提示:
应用程序池“zhentan”的工作进程在尝试从文件“\\?\C:\inetpub\temp\apppools\zhentan\zhentan.config”的第“154”行读取配置数据时遇到错误“未能解密属性“password”,因为密钥集不存在”。数据字段包含错误代码。
环境:windows2008+IIS7.5
------解决方案--------------------
这个错误从表面上看是由于找不到系统的MachineKeys而导致的。
你可以先查看一下C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys目录的权限是否足够。Everyone应该对这个目录有如下权限
• List Folder/Read Data
• Read Attributes
• Read Extended Attributes
• Create Files/Write Data
• Create Folders/Append Data
• Write Attributes
• Write Extended Attributes
• Read Permissions
具体的权限可以参考http://support.microsoft.com/kb/278381,虽然这篇文档描述的是Windows 2003,但是Windows 2008及更高版本需要的权限是一样的。而且C:\ProgramData目录权限也需要添加Users读取权限
修改了权限之后最好重启一下系统。
之后如果问题还在,或者说这些权限本来就都有,那么说明IIS所需要的那几个MachineKeys被破坏掉了,最快速的解决办法就是把IIS重装一下,因为在重装的过程中,IIS所需的MachineKeys会重新生成。