@header('Location: ' . $uri);
但它很少发生,问题是什么?
答案 0 :(得分:3)
不要使用@
来阻止错误并检查日志,这是以下几点之一:
调试就是答案。
答案 1 :(得分:2)
也许你的脚本出于某种原因在它之前发送了一些输出。删除@
。
答案 2 :(得分:1)
嗯,很可能是因为空格已经发送了标题。你永远不会知道这一点,因为你前面有一个@
符号可以阻止显示错误。
通常这个空格可能是由另一个错误引起的,或者只有在包含某个文件时才会发生。
另一种可能性是$url
没有正确格式化,或者某种方式标题只是浏览器看起来不对。在这种情况下,浏览器可能会选择忽略它。回收你发送的完整标题并确保它看起来正确。
最后,如果您连续重定向次数太多,某些浏览器将停止重定向。
答案 3 :(得分:1)
标题可能不会立即发送。始终在die()
后使用header()
。