强制刷新的PHP重定向(CTRL + F5)

时间:2011-12-20 15:26:27

标签: php redirect refresh

我有一个包含可编辑表格的页面。我需要用户能够编辑它然后提交他们的更改。一切正常,直到我将它们重定向到具有新内容(与其更改相关)的同一页面。但是,他们看到了旧的内容。

如果我在浏览器上按ctrl + f5,它们的内容会更新。我想知道是否有办法强迫这一点。这是我的PHP代码,它无助于刷新:

header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
header('Pragma: no-cache');
header( 'Location: http://www.bamozir.com/en/mtl-en/recent/general-info/cost#edit' );

Eugen Rieck Solution适用于firefox,chrome和safari。但不是IE和Opera。知道如何解决这个问题吗?

3 个答案:

答案 0 :(得分:3)

ALLWAYS的工作原理:假设您的网址为http://my.server/my/page?a=b&c=d,您将重定向到http://my.server/my/page?a=b&c=d&nocache=1234567890,其中1234567890是一个较大的随机数

答案 1 :(得分:2)

您必须在要强制刷新的页面上设置缓存控制和到期日期。通过在重定向之前设置它,您告诉浏览器不要缓存您重定向的页面。

答案 2 :(得分:2)

使用此标头使用刷新:

Refresh: 0;url=http://www.bamozir.com/en/mtl-en/recent/general-info/cost#edit

在此处查看有关该主题的更多信息:'Refresh' HTTP header