在我的页面上
/my/conditional/redirect/page/index.php
我有条件的 PHP 302重定向:
<?php
if (!in_array($_SERVER['REMOTE_ADDR'], ['369.168.492.123'])) {
// header('HTTP/1.1 403 Forbidden');
header('Location: https://'.$_SERVER['HTTP_HOST'].'/my/redirect/index.php', TRUE, 302);
exit;
}
else {
[... PHP CODE HERE...]
}
?>
我尝试了以下代码:
TRUE
和302
参数的exit;
https://'.$_SERVER['HTTP_HOST']
没关系。重定向始终会将浏览器URL栏中的位置更改为:
/my/redirect/index.php
尽管我非常希望它能够坚持为:
/my/conditional/redirect/page/index.php
在不更新浏览器URL栏位置的情况下,要确保页面重定向(通过302 Redirect
),我缺少什么?
答案 0 :(得分:1)
在不更新浏览器URL栏位置的情况下,要确保页面重定向(通过302重定向),我缺少什么?
什么都没有。这就是HTTP重定向的工作方式。
如果要保留URL,则需要执行内部重定向或代理请求,以便服务器返回所请求URL的内容。