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會重新生成。