1

我有一个客户(家庭暴力中心)想知道我们是否可以阻止他们的网站出现在浏览器历史记录中,或者在用户退出网站时从浏览器历史记录中删除他们的访问。

我知道一旦有人在网站上,我们可以使用 location.replace 进行导航以防止新页面像普通页面一样加载的方式构建它,但是当有人输入http://example.org时的初始页面访问仍然是在历史上。

是否可以在页面加载时阻止页面被记录在历史记录中,或者如果记录存在则删除记录?

我有一种不好的感觉,它不能,但如果有人知道,那就是我在 Stack Overflow 上的所有 smartypants 朋友。

4

4 回答 4

4

不幸的是,这是无法做到的。

对于您的客户场景,我最好的建议是让用户了解如何从浏览器历史记录中删除他们的访问,以及如何在以后的访问中使用匿名浏览/私人模式/隐身模式。

于 2012-08-23T14:03:49.313 回答
3

引用MDN

无法清除会话历史记录或禁用非特权代码的后退/前进导航。最接近的可用解决方案是 location.replace() 方法,它将会话历史记录的当前项替换为提供的 URL。

所以我认为你的客户想要的只是不可能的。

于 2012-08-23T14:01:05.640 回答
3

添加脚本以识别每个浏览器,并提供浏览器特定的步骤来清除历史记录/使用隐身模式。

于 2012-08-23T14:02:10.650 回答
-1

在这种情况下,可能会使用正确配置的代理服务器。

于 2012-08-24T09:59:10.363 回答