java - 如何在浏览器中跳过访问页面的历史记录

标签 java security caching jsp browser

由于某些安全限制,要求访问的页面不应列在浏览器的历史记录中。

因此页面根本不需要显示在历史记录中。

我尝试了以下方法但失败了。

解决方案一:

1. <%
2. session.invalidate();
3. response.setHeader("Cache-Control","no-cache");
4. response.setHeader("Cache-Control","no-store");
5. response.setDateHeader("Expires", 0);
6. response.sendRedirect("home.jsp");
7. %>

解决方案 2:

<%
Response.Cache.SetExpires(DateTime.Parse(DateTime.Now.ToString()))
Response.Cache.SetCacheability(HttpCacheability.Private)
Response.Cache.SetNoStore()
Response.AppendHeader("Pragma", "no-cache")
%>

解决方案 3:

<body onload="history.forward()">

解决方案 4:

<%
response.setDateHeader("Last-Modified", System.currentTimeMillis());
%>

与 Firefox 一样,有功能工具 -> 开始隐私浏览,它不存储任何 session 数据。有什么可以通过 JavaScript 来实现的。

最佳答案

当安全很重要时,您不能依赖客户端。所有浏览器都有不同的历史实现。您应该依赖服务器端解决方案。

关于java - 如何在浏览器中跳过访问页面的历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4346125/

相关文章:

security - htaccess 身份验证的安全性如何

ios - 当传输编码的响应 header 值被分块时,NSURLCache 不起作用

java - 指定为 1 时 Derby 自动递增 100

c# - 确定真正调用程序集的方法

java - 为什么 Jackson 会对以 `UnrecognizedPropertyException` 开头的 Kotlin boolean 类型 `val` 抛出 `is` ?

android - 确保从 android 到 web 服务的通信

c - 缓存 Sim 中的段错误

java - 内存数据库选项(开源和基于 Java)

java - 带有 spring boot 错误自动配置的 H2 嵌入式数据库

Java 7 新的 IO API - Paths.exists