-3

我想开发一个 url 路由器,当一个特定的 URL 出现时,我将我的程序重定向到一个特定的 url。甚至可能吗?提前致谢...

4

2 回答 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 回答