更改 ASP.NET 临时文件文件夹位置

Posted

技术标签:

【中文标题】更改 ASP.NET 临时文件文件夹位置【英文标题】:Changing ASP.NET Temporary Files folder location 【发布时间】:2020-05-18 06:47:42 【问题描述】:

最近,我们发现我们的 Web 服务器的 C 盘已满,主要原因是 ASP.NET 临时文件文件夹位置(C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files )。

我们决定更改此位置并将其移动到同一磁盘上的另一个驱动器,该驱动器具有足够的空间。

我们尝试通过添加以下内容来更改网站的其中一个网络配置:

<compilation tempDirectory="D:\TemporaryASPNETFiles">

这完成了工作并将临时文件移至该单个网站的 D:\TemporaryASPNETFiles。

现在我们希望对所有网站都这样做。但是访问每个网站的 webconfig 并更改 tempDirectory 是不可行的,因为我们在 IIS Web 服务器上有大量网站。

我们也尝试更改以下配置: C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config 通过将 tempDirectory 位置添加到编译标记:

<compilation tempDirectory="D:\TemporaryASPNETFiles" >

但它没有做任何改变。是否有任何其他位置可以对所有网站进行更改。

【问题讨论】:

从这个答案中,确保关闭标签及其在 中。你也尝试过machine.config。 serverfault.com/questions/350550/… 嘿 Raghav,我想知道下面的解决方案是否有助于回答您的问题,如果可以,如果可以将答案标记为已解决,那就太好了 :)? 抱歉回复晚了,解决方法是在更改后重新启动 IIS。 抱歉回复晚了。 【参考方案1】:

步骤:

Web.config 中进行所需的修改,如下所示 重启 IIS

位置:此文件夹是您安装 NET 框架的位置的子目录

"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\web.config"

验证版本:

System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory();

web.config

<system.web>
  <compilation tempDirectory="D:\TemporaryASPNETFiles" />
</system.web>

编辑

正如 OP 在 cmets 中所建议的那样,在这些步骤之后重新启动 IIS 就可以了。

【讨论】:

以上是关于更改 ASP.NET 临时文件文件夹位置的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET 计划删除临时文件

临时 Asp.Net 文件的 ApplicationPoolIdentity 权限

以中等信任度在 ASP.NET 中存储临时用户文件

ASP.NET - 如何在浏览器中显示图像而不将图像保存在临时文件中?

如何存储由我的 ASP.NET 模块操作的临时数据?

ASP .net 当前物理位置