2012-03-01 17 views
3

在我的網站中,我銷燬了會話,但註銷後如果用戶在瀏覽器上按回他們可以看到最後一頁。當我點擊返回按鈕時,我可以看到我最後一個受保護的頁面

我該如何解決這個問題?我試過javascript,但沒有工作。我嘗試了未設置或銷燬會話,但這不起作用。我可以做什麼 ?

我在頭上使用這些代碼。

Header('Cache-Control: no-cache'); 
Header('Pragma: no-cache'); 

我該如何解決這個問題。謝謝你的幫助。

+0

它爲什麼重要?如果您的應用程序進行了身份驗證等適當的操作,他們將無法執行任何操作...... – cHao 2012-03-01 13:19:51

+0

我知道,但我的僱主不想看到該頁面:),@ cHao – 2012-03-01 13:27:50

+0

那麼,您的僱主不會那麼做不了解網絡瀏覽器的工作原理。 – cHao 2012-03-01 13:32:16

回答

2

你不能。該頁面已發送給客戶端,由客戶決定如何處理該頁面。

此行爲與具有攝影記憶的用戶之間有什麼區別?

真正的問題是:你爲什麼要這樣做?

+0

只有當客戶端從內存或磁盤緩存中加載頁面時,這纔是真實的。也許@SahinYanlık應該驗證這是否是這種情況(例如通過檢查Web服務器日誌)。 – 2012-03-01 13:22:46

+0

@AnotherCode如果客戶端之前看到了頁面,那意味着它已經訪問過它(從服務器或緩存中無關緊要)。所以你永遠無法阻止他們重新訪問它。 – 2012-03-02 08:30:16

0

如果瀏覽器中存在緩存,則無法準確控制它。你可以做的最好的做法是在創建頁面上打印時間戳(可能使用隱藏字段),並且如果發現自時間戳超出某個限制以來的時間,可以使用JavaScript onLoad重定向或格式化頁面。

但是,這不會阻止某人看着別人的歷史;只有清理歷史才能做到這一點。

0

你必須在dom:loaded事件上用javascript(可能是AJAX)檢查會話。如果會話被銷燬,您可以重定向用戶。另外,如果您選擇這種方式,則必須在會話驗證後通過AJAX獲取內容 - 當然。

相關問題