重定向到新的 url 但从历史记录中删除以前的

Make redirect to new url but remove previous from history

如何用新文档替换当前 URL 文档,但从文档历史记录中删除当前文档的 URL,这意味着无法使用 "back" 按钮导航回原始文档而不存储在浏览器历史记录列表中。

我可以通过 jQuery 或 javascript 通过

  window.location.replace("newURL");

但我需要在 php.HOW?

中这样做

如果您在页面上执行 <?php header('Location: http://www.abc.de/'); ?>http://www.something.de/ then the page http://www.something.de/ 将不会在浏览历史记录中显示,用户也无法返回。这是你要的吗?

如果您根本不想在浏览器历史记录中保留该页面,则不能将浏览器发送到那里,因为它会跟踪历史记录中所有访问过的页面,因此它可以正确显示哪些链接已被访问过。据我所知,没有办法阻止浏览器跟踪访问过的链接。如果您从服务器执行 302 位置重定向,则原始页面和重定向页面都将出现在浏览器历史记录中。原始页面不会在后退按钮列表中,但会在历史中。

如果 URL 中您试图不那么显眼的部分是 URL 的查询参数,那么您可以使用表单 post 而不是常规页面加载因为浏览器不会在历史的可见部分存储表单参数。

否则,您可能需要将 URL 与 Ajax 调用一起使用(因为这不会存储在历史记录中),然后使用客户端 window.location.replace(...) 去对于最后的 URL,您不想公开分享的 URL 永远不会是浏览器页面转到的 URL,只有 URL 用于 Ajax 调用。

如果您想清除上一页,请尝试使用 "history.back();" 然后设置您的 windows.location。

对我有用

<button onclick="goBack()"></button>
<script>
        function goBack() {
            window.history.back();
            window.location.replace('url');
        }
</script>