2011-10-25 61 views
6

我目前正在開發一個女性避難所網站。由於這是使用該網站的用戶非常敏感的信息,因此我想停止瀏覽器存儲他們訪問的任何歷史記錄。這可能使用類似HTML5 History API的東西嗎?理想情況下,它也可以在IE6 +中工作,因爲有很多人使用舊版本的IE。停止瀏覽器存儲訪問記錄

我知道瀏覽器都有隱私瀏覽模式,但大多數人不知道他們,所以一些自動的方式是最好的。

一個潛在的(雖然不太優選)的解決方案是促使人們使用隱私瀏覽模式,如果他們目前不這樣做。是否有可能通過JavaScript檢測到這一點?

編輯:我接受了維吉爾的答案,因爲他們可能需要將他們學到的知識應用到其他網站。我也用Joseph的location.replace隱藏我的訪問按鈕,所以它禁用後退按鈕。

一個有趣的事情要注意的是,我試圖在網站上的所有鏈接上使用history.replace,認爲這將取代所有瀏覽器歷史,意味着只有最後一頁瀏覽被記住。但是,在Firefox中打開歷史記錄面板(未在其他瀏覽器中測試過)中仍然顯示每個瀏覽過的頁面的日誌,但只能通過後退按鈕無法訪問。

因此,對於類似的查詢人,我想重申,教育用戶在保護他們的第一步。感謝大家給你的建議。

問候

裏克

+1

有用的:http://stackoverflow.com/questions/2860879/detecting-if-a-browser-is-using-private-browsing-mode – Konerak

+0

好想法,祝你好運! –

+0

一個解決方案是讓某些有用的無害合作伙伴加載您的頁面上的AJAX樣式,或通過代理等,使第二個用戶不可能重新訪問。也許做一個通過代理指向您的網站的一次性鏈接,然後將該一次性鏈接銷燬或指向其他地方。 –

回答

3

不幸的是,這是不可能的。用戶必須採取措施刪除其歷史記錄。我建議你提出警告,以便女性可以刪除自己的歷史記錄,並且可以爲每個主要瀏覽器提供說明。至於HTML5和JavaScript,這在IE6中是不可能的,因爲它不支持HTML5。

+0

= 1給我這個答案。你可能會加入各種黑客等,這可能會掩蓋歷史,但你會更好地教育你的用戶。這樣他們將有選擇,如果他們想抹去歷史或不。畢竟,有些人可能想要使用他們的歷史。 –

+0

儘管您可以使它們變得更容易:一個非可疑的域名,只有一個頁面訪問,其餘的使用AJAX進行收費(只有一個歷史記錄行刪除而不是50個),沒有cookie,沒有電子郵件註冊,應急按鈕,視頻教程... – Konerak

+0

@LeeTheobald,Virgil,我們是網站上的幾個大按鈕,用於告訴人們ho使用隱私瀏覽模式和恐慌按鈕。他們有一個稍微俗氣的動畫來吸引用戶的注意力,但我認爲他們的好處超過了文體的關注!感謝您的建議。 –

0

好吧,雖然我不認爲你可以「迫使」用戶使用隱私瀏覽,你可以給他們機會,以避免歷史。

例如,有網站試圖存儲cookie中(無論是從服務器,並使用像JavaScript語言)。如果服務器可以在下次訪問時重新檢測cookie,請將它們重定向到「使用隱私瀏覽功能(以及如何操作),或自行承擔風險」的登錄頁面。

這是圍繞它的唯一方法。

我當然也會實現SSL,但我認爲這更隱含。

3

做到這一點的一種方法是使用locarion.replace(url)將所有導航專門通過JavaScript進行。這不會保存歷史記錄狀態,但也意味着用戶無法真正使用書籤。對於一個鏈接,這將是類似這樣的

<a href="javascript:location.replace(location.host + '/wherever.html')" href="wherever.html">wherever</a> 

或者

<a href="#" onclick="location.replace(location.host + 'wherever.html'); return false;">wherever</a> 

或相似。

+0

好奇的配偶確實不會看到abuserefuge.org,但somesite.org - 但是當他訪問該網站檢查出來時,他仍然會看到它是什麼。 – Konerak

+0

謝謝,我會着眼於實現這一點,並看看它是如何工作的。 –

-4

解決方案不會使用HTTPS嗎?我非常確定瀏覽器不會存儲這些網站的歷史記錄。

+1

這不是事實。無論是否使用HTTPS,瀏覽器都可以自由存儲歷史記錄,並且實際上可以這樣做。 –