我想开发一个 url 路由器,当一个特定的 URL 出现时,我将我的程序重定向到一个特定的 url。甚至可能吗?提前致谢...
问问题
2087 次
2 回答
1
您可以发送 HTTP 标头以重定向到另一个页面:
header("Location: foo.php");
...或完整的 URL:
header("Location: http://www.google.co.uk/");
请注意,您应该在任何其他输出(即回显)之前发送标头。
于 2012-05-27T11:34:23.583 回答
0
如果你想测试一个“特定”的 url,你需要先构造它:
$ssl = "";
if ((isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"]=="on") || (isset($_SERVER["SERVER_PORT"]) && $_SERVER["SERVER_PORT"]=="443"))
{ $ssl = "s"; }
$serverport = ($_SERVER["SERVER_PORT"]!="80"?":".$_SERVER["SERVER_PORT"]:"");
$theurl = "http".$ssl."://".$_SERVER["SERVER_NAME"].$serverport.$_SERVER["REQUEST_URI"];
然后,您可以针对另一个 url(或它们的数组)对其进行测试:
if ($theurl != $myurl) {
header("Location: index.php");
}
针对一组网址:
if (in_array($theurl,$myurls)) {
header("Location: index.php");
}
于 2012-05-27T11:50:11.207 回答