使用URL进行简单页面重定向

时间:2017-03-16 09:02:25

标签: javascript php jquery url-redirection

我希望我的index.php重定向到我的welcome / index.html。我知道有很多方法可以做到,但我想像Facebook一样缩短它。我想要一个基于网址的重定向。我想通过使用url将index.php重定向到welcome / index.html。

例如:

example.com to example.com/?url=welcome
//this 'url=welcome' is the index.html of my welcome folder.

3 个答案:

答案 0 :(得分:2)

根据我所理解的,这里是代码。将它放在index.php的最顶部。我假设您正在使用域example.com

<?php 

$destination = $_GET["url"];

switch($destination) {
    case "welcome": // add your destinations here, one per single "case"
    case "about":
    case "anotherpage":
        header("Location: /" . $destination . "/index.html");
    break;   
    default:
        echo "Error";
    break;
}

?>

通过这种方式,您可以管理哪些重定向将起作用,哪些不起作用,避免&#34; evil&#34;您的重定向系统的用法。

example.com?url=http://evilsite.com这样的恶意内容不会将其重定向到evilsite.com

这可能不是最佳解决方案,但它是避免不想重定向的良好起点。

答案 1 :(得分:0)

不确定这是否会有所帮助,但欢迎您尝试

<?php 
  if (isset($_GET["url"])) {
    $url = $_GET['url'];
    header('Location:'.$url);
  }
 ?>

我没试过这个,但这是我在看到你的帖子之后的想法

答案 2 :(得分:0)

我使用标题进行重定向读取的地方有点危险,因为黑客可以轻易地改变标题,黑客可以轻松地将受害者发送到另一个位置。所以我使用javascript location.href 函数进行重定向。

<?php
echo "<script>window.location ='http://example.com/welcome/index.html</script>";
?>

如果您想将用户从example.com发送到动态网址,您可以设置一个get变量。

来源地址:http // example.com?url = http://example.com/welcome.html 目的地址:http://example.com/welcome.html

<?php
if(isset($_GET['url']))
echo "<script>window.location ='$_GET[url]'</script>";
else
echo "<script>window.location='http://somewhereelse.com'";
?>

现在,您可以在源地址中动态设置url变量,并将用户重定向到任何地方