【问题标题】:Redirect with header using refresh in PHP [duplicate]使用PHP中的刷新重定向标题[重复]
【发布时间】:2012-10-04 18:45:12
【问题描述】:

可能重复:
Headers already sent by PHP

我正在使用 header() 函数将用户重定向到某个相对 URI,例如:

header('Location:/Root/folder');

一切都完美无缺。但是,如果我添加 Refresh:0;到 header() 参数的开头,我得到奇怪的错误,我没有被重定向到请求的 URI。

我得到的错误是:我在函数中使用 header() 的一些未定义的 POST 变量,以及以下参数:

Warning: Cannot modify header information - headers already sent by (output started at...

有什么问题?即使最后加上 ob_start() 和 ob_end_flush() 也不行……元标记也不行,我不会接受 PHP 脚本中的 JS 代码。

【问题讨论】:

  • 提前 2 分钟:查看下一个问题,stackoverflow.com/questions/12884612/…
  • 如果您在页眉之前回显或打印某些内容,然后将其删除,它将起作用....第二个选项:您在文档中有一个 BOM
  • 不要显示一半的错误消息和一些代码,而是将您拥有的内容提供给我们 - 否则您只会得到很多猜测和否决...

标签: php http redirect header


【解决方案1】:

这就是问题

header('Location:/Root/folder');

phpheader()需要绝对路径

使用

 header('Location: http://www.domain.com/Root/folder/something.php');

【讨论】:

  • 你错过了 http:// 部分...
【解决方案2】:

别忘了 http://

header('Location: http://www.domain.com/Root/folder/something.php');

【讨论】:

    【解决方案3】:

    header() 函数之后使用die()

    【讨论】:

      猜你喜欢
      • 2013-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-02
      • 2017-12-25
      • 2012-01-24
      相关资源
      最近更新 更多