C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\文件不断增长,如何处理?...
很久沒有寫博了。最近半年除了忙活布置新家和過年期間走親訪友之外,都是在公司處理一些項目中的雜事;連家里買的很多書都停下來沒看了,感覺這段時間在事業(yè)和學(xué)習(xí)上一直都是忙忙碌碌,卻又碌碌無為。
吐槽完,說正事:
asp.net網(wǎng)站在服務(wù)器端運行時,會在C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\目錄中生成編譯文件,像這樣的:
想了解Temporary ASP.NET Files目錄生成原理的可出門右轉(zhuǎn)上百度查詢,此篇博文要說的是:當(dāng)Temporary ASP.NET Files目錄生成文件太多,導(dǎo)致C盤爆滿時,我們可以如何處理?
方法一:把Temporary ASP.NET Files中生成的文件轉(zhuǎn)移到其它磁盤,使它不擠爆C盤
在web.config的compilcation節(jié)點中設(shè)置屬性tempDirectory,文件的生成目錄,如:
默認(rèn)情況是這樣:
<compilcation?debug="true">改為:
<compilcation?debug="true"?tempDirectory="D:\MyTemporaryAspNetFiles\"><!--此處的盤符目錄可以自己設(shè)定-->修改之后,即可釋放C盤,不過文件仍然會持續(xù)生成在其它磁盤。
方法二:修改預(yù)編譯的方式(修改compilcation節(jié)點中batch屬性的值)
在web.config的compilcation節(jié)點中設(shè)置batch屬性,此屬性若不設(shè)置,默認(rèn)為true。
batch="true"時,將文件批量編譯在一個dll中,好處就是可提高編譯速度。
batch="false"時,因為會將每個需要編譯的文件編譯為單獨的dll,存放在Temporary ASP.NET Files目錄中,第一次編譯比較慢。
/******** 以下為我們公司項目特有情況,僅供參考?********/
在我們的在以往的某些項目中,我們把所有*.html都托管給了.net Framework的aspnet_isapi.dll,并且*.html頁面根據(jù)網(wǎng)站后臺系統(tǒng)錄入數(shù)據(jù)而不斷重新生成,所以每次生成新的html文件之后,整個網(wǎng)站都會被重新編譯,導(dǎo)致Temporary ASP.NET Files目錄中的編譯文件不斷大幅增長。
而我們改為batch="false"之后,每個文件會獨立編譯,當(dāng)生成新的html文件時,也不會整站全部編譯,只會單獨編譯這一個html文件對應(yīng)的dll文件存放在Temporary ASP.NET Files目錄中。
總結(jié)
以上是生活随笔為你收集整理的C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\文件不断增长,如何处理?...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# DataTable分页处理
- 下一篇: 存款30万一年利息多少钱