我面臨的一個問題是,從網站註銷後,我能夠使用瀏覽器後退按鈕查看所有頁面,我的理解是,如果我清除所有緩存註銷,然後我可以阻止它,但我的擔心是,如果我刪除所有的緩存,那麼我的網站性能會變差?MVC.Net中的緩存
也有可能只爲特定頁面製作nocache?
我面臨的一個問題是,從網站註銷後,我能夠使用瀏覽器後退按鈕查看所有頁面,我的理解是,如果我清除所有緩存註銷,然後我可以阻止它,但我的擔心是,如果我刪除所有的緩存,那麼我的網站性能會變差?MVC.Net中的緩存
也有可能只爲特定頁面製作nocache?
是的,您可以使用返回視圖的控制器操作上的OutputCache
屬性。例如,爲了防止在視圖緩存使用:
[OutputCache(NoStore = true, Duration=1)]
性能會受到影響,因爲你再告訴瀏覽器不緩存這樣就會使另一個請求到您的網站。但是,這不一定是顯着的影響,因爲您只是將它們重定向到我期望的「會話過期」頁面。
我已經經歷了這個問題,我的主要問題是,有什麼辦法可以讓我們把東西放在緩存中,但是我們不會讓用戶在退出後使用後退按鈕? – Ankush
當你說「把東西保存在緩存中」時,我假設你指的是頁面上的圖像等。這是可以的,因爲這些項目的緩存可以在你的配置中指定。爲了防止* page *本身緩存(以便瀏覽器歷史記錄無法導航),則需要執行與我的答案類似的操作,以指示用戶的瀏覽器不要緩存該URL。我已經使用過這種技術很多次,並且工作正常。 – MarkG
是的你是對的,我的意思是保留圖像,所以如果我們只是寫'[OutputCache(Duration = 1)]',這意味着它不會緩存url,但會緩存圖像。是嗎? – Ankush
這個答案是你需要的 - http://stackoverflow.com/a/1705113/182344 – RredCat