由于浏览器缓存,PHP 标头 301 重定向不起作用


PHP header 301 redirect not working due to browser cache

我的代码如下:

<?php 
header("HTTP/1.1 301 Moved Permanently"); 
header("Location: http://newsite.com/"); 
?>

我遇到的问题是几个用户已经报告该页面没有重定向他们,而是向他们显示旧页面上的内容,但在当天晚些时候它显示了正确的重定向。

我知道它必须与缓存有关,但是哪种方法是绕过上述重定向的缓存的最有效和标准化的方法?我会使用 php 还是 javascript?

谢谢。

试试这个:

header('Cache-Control: no-cache');
header('Pragma: no-cache');

浏览器可能会忽略您的请求,但这应该可以解决问题。

正确的答案是lucasvscn所说的在标题标签后添加exit();。上面提到的缓存控制实际上给我带来了错误。