2014-02-06 179 views
3

我們有一個運行在Windows Server 2k8R2上的2.x ASP.NET應用程序。無法清除ASP.NET緩存

我們必須做出一些改變,當我們將它們發佈到生產環境中時,新的更改不起作用。當我檢查生產服務器上的物理頁面時,所有新代碼都在那裏,但舊代碼仍在執行。

東西似乎緩存,我不知道在哪裏檢查來取消緩存它?我很快重新啓動了IIS,但是我無法長時間將服務器關閉,直到今晚晚些時候。我想弄清楚爲什麼會發生這種情況,所以我現在可以重置它,並在將來避免它。任何想法?

+0

這只是一個猜測,但也許你必須清除瀏覽器上的緩存才能看到更改。代碼是在代碼後面更改的,還是它們在頁面上(即腳本)?爲了防止緩存我通常使用.. IE 'Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);' 和 火狐 'Response.Cache.SetNoStore();' – temarsden

+0

我在頁面中設置NoCache並且瀏覽器肯定被緩存。 –

回答

0

我不知道是什麼導致了這個問題,但我找到了一個修復方法。當我觸摸web.config時,它會回收所有內容。所以我通過web.config編輯,只是添加了一些黑色空間並保存。一旦我這樣做了我的頁面正確刷新。這使我可以繼續運行服務器。如果我多次編輯web.config,它將會鎖定,我將不得不重新啓動IIS(稍後學會這個難題),但是爲了一次性更新,所以我可以繼續運行,直到晚些時候我可以回收它,它效果很好。

1

與刷新應用程序池相同。那樣做,它快得多!

+1

我真的試過這個,它似乎沒有工作,這真的讓我困惑。 –