我有一个客户(家庭暴力中心),他想知道我们是否可以阻止他们的网站出现在浏览器历史记录中,或者当他们退出网站时从浏览器历史记录中擦除用户访问权限。
我知道,一旦有人在网站上,我们就可以通过使用location.replace进行导航来阻止新网页像正常网页一样加载,但是当http://example.org中输入的人仍然会进行初始页面访问时在历史上。
是否可以在页面加载时阻止页面记录在历史记录中,或者擦除记录(如果存在)?
我有一种不好的感觉它不能,但如果有人知道它是Stack Overflow上所有的smartypants朋友。
答案 0 :(得分:4)
不幸的是,这无法做到。
对于您的客户方案,我最好的建议是,用户可以了解如何从浏览器历史记录中删除访问权限,以及如何在以后的访问中使用匿名浏览/私人模式/隐身模式。
答案 1 :(得分:3)
引用MDN:
无法清除会话历史记录或禁用会话历史记录 从非特权代码返回/前进导航。最接近的 解决方案是location.replace()方法,它取代了当前的方法 具有提供的URL的会话历史记录的项目。
所以我认为客户的意愿是不可能的。
答案 2 :(得分:3)
添加脚本以识别每个浏览器,并提供浏览器特定步骤以删除历史记录/使用隐身模式。
答案 3 :(得分:-1)
正确配置的代理服务器可能在该上下文中使用。