【问题标题】:php header function redirects to only local pagesphp header 函数仅重定向到本地页面
【发布时间】:2014-11-10 05:01:51
【问题描述】:

我使用 php 的 header() 将用户重定向到外部链接。但它只重定向到内部页面,以下是示例。

 header('location: google.com');

上面的代码只是重定向到:

 www.mydomain.com/google.com

位置“google.com”是从 get 变量中接收的。当我尝试在获取变量中使用“http://google.com”时,它会给出 403 错误页面。

我希望标头函数重定向到外部链接而不是我的域名。

【问题讨论】:

  • 403 错误页面来自哪里?从你的服务器?
  • 试试这个header('location:http://www.google.com');
  • @KrishR 他已经这样做了。
  • @itachi 是的,它从服务器发出 403 错误。

标签: php redirect header


【解决方案1】:

试试这个

header("Location: http://www.google.com/"); /* Redirect browser */

【讨论】:

  • 正如我所说,链接来自一个 get 变量,所以如果我使用该 url,它会将我发送到 403 页面。
  • 请告诉我它是如何解决的。根本原因是什么。
  • 因为我无法通过获取变量(在 url 中)发送带有 url 的“http://”,所以我在这里连接了“http://”字符串 ...header('位置:http://'.$_GET['link']);所以它将被重定向到外部网址。
【解决方案2】:

你可以使用:

<?php
    header('Location: http://google.com/'); 
?>

注意:header 函数位于 PHP 文档的部分中,并且必须放在任何 HTML 标记之前。

您还可以使用Meta Tag "Refresh" 来重定向用户。使用此 HTML 标记,您可以确定用户在页面重定向之前将停留多长时间。

【讨论】:

    【解决方案3】:

    要重定向到外部链接,请使用 http 后跟站点名称:

    <?php 
    header('Location:http://google.com');//redirects to google.com
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-17
      • 1970-01-01
      相关资源
      最近更新 更多