为什么需要将我的应用程序池标识添加到IIS_IUSRS组?

我在Windows 2008 R2 / IIS 7.5服务器上设置.NET v4.0 Web应用程序,该服务器使用应用程序池标识的域帐户。 当我访问该网站时,出现以下错误:

当前身份()不具有对“C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files”的写访问权限

根据这个: http : //learn.iis.net/page.aspx/140/understanding-built-in-user-and-group-accounts-in-iis/工作进程的身份被添加到IIS_IUSRS组当过程开始时。 对于我在同一台服务器上运行的现有.NET v2.0应用程序(我不必将其域帐户应用程序池标识添加到IIS_IUSRS组),这似乎工作正常。 这似乎并不是我设置的第一个.NET v4.0 Web应用程序的情况。

一旦我将该身份添加到组中,一切正常。 我怀疑有些东西configuration不正确,迫使我这样做。 我想在推出更多网站/服务器之前了解这一点。

在此先感谢您的帮助…

用户标识没有访问临时asp.net文件的权限。 我之前有过问题,通过授予该用户ntfs对该文件夹的权限来解决。 此外,暂时提升用户权限以查看是否是权限问题。 然后你可以检查IIS_ISUSRS组是否有足够的权限来访问这些文件。 不要忘记回收IIS。

即使您安装了.NET Framework 4,ASP.NET 4也不会自动在IIS上注册。您必须在执行其他任何操作之前手动执行aspnet_regiis

msdn.microsoft.com/en-us/library/vstudio/k6h9cz8h(v=vs.100).aspx

-i-ir就足够了。