【发布时间】:2015-09-12 06:03:34
【问题描述】:
我正在使用 header('Location:') 将用户重定向到另一个网页。但是,不是覆盖地址栏上的前一个地址,而是将新地址附加到已经存在的地址上。例如:
地址栏目前持有:
localhost/v2/admin
还有header('Location:'.DIRADMIN.'login.php');
其中 DIRADMIN 是一个常量,定义为
define(DIRADMIN,'localhost/v2/admin/');
然后,重定向后,新的地址栏将是
localhost/v2/admin/localhost/v2/admin/login.php
我以为是服务器的原因,我正在使用。我使用的是统一服务器零。但后来我安装了 WAMP,问题仍然存在。
我仍然是菜鸟,我不知道是什么原因造成的,如果问题是由于 mod_rewrite,那么在两台服务器上,模块都处于活动状态。我已经检查了一些问题,例如 redirect-PHP header(Location:..)
等等。我什至对此进行了谷歌搜索,但没有结束。 我该如何解决这个问题?
header_remove();
无法使用,因为第一个地址是手动输入的,不是由header(); 设置的
【问题讨论】:
-
试试
header('Location:'.$_SERVER['DOCUMENT_ROOT'].'/login.php'); -
请考虑将
Location标头设置为状态码(301 -> 永久,302 临时)
标签: php apache mod-rewrite wamp