首页 > 解决方案 > PHP重定向用户并将以前的URL保存在浏览器的历史记录中

问题描述

这让我很困惑。假设用户访问了文件夹A,但是,比方说,由于某种原因,他被重定向到文件夹B。问题是浏览器不会将位置A记录到其历史记录中。

url/A重定向到稍微不同的位置url/B

用户点击“历史返回按钮”后,并没有到达之前的url/A位置。我会说,它有点被省略了。

我已经尝试了这两种重定向方法。而且似乎他们没有将当前 URL 保存到浏览器的历史记录中。

header("Refresh:0; url=$url_b");
header('Location: '.$url_b); 

标签: phpredirectheaderbrowser-history

解决方案


虽然我仍在质疑原因,但您也许可以在页面A上使用 javascript进行重定向。通过这种方式,我们能够回到我们在返回点击时的位置。

所以这里我们有一个 js 脚本,它只在 php 条件为 false 时运行:

<?php
if ( ! condition) { ?>
    <script>
        window.location.href = "http://example.com/B";
    </script>
<? }
?>

推荐阅读