是否可以在 IIS 中配置“Temporary ASP.NET Files”文件夹的位置?

Pan*_*nek 27 files iis windows-server-2008

在将池标识切换为域用户后,在 IIS7.5 下,我收到此错误:

“当前身份(域\用户名)没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”的写访问权限。”

我可以授予此特定目录的用户权限,但我想知道是否有更好的解决方案。理想情况下,我想将此“临时 ASP.NET 文件”目录配置为存储在其他位置。

小智 24

您可以通过编辑Web.config文件的配置部分来更改每个网站/应用程序的默认位置。

<system.web>
  <compilation tempDirectory="D:\MyTempFiles" />
</system.web>
Run Code Online (Sandbox Code Playgroud)

应用程序将重新编译,文件将存储在这个新位置,之后您可以安全地删除旧文件夹。请注意,文件夹名称将保持不变;例如,如果旧位置是:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\9878g103\e67805p7
Run Code Online (Sandbox Code Playgroud)

那么新的将是:

D:\MyTempFiles\root\9878g103\e67805p7
Run Code Online (Sandbox Code Playgroud)

  • 非常感谢 ShaneH 的回答。您提到的更改不需要针对每个网站/应用程序。您可以通过更改框架的 web.config 文件在框架版本的基础上应用该更改,例如:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\web.config。通过这样做,您会影响所有针对该框架版本的网站。 (7认同)
  • 请注意,这属于 web.config 的 system.web 部分 (4认同)