2010-08-27 68 views
1

我正在使用codeigniter 1.7.2。Opera和Safari上的CodeIgniter会话问题

在我的web应用程序注销后,单击浏览器的后退按钮时页面将重新加载到登录页面。

此问题发生在OperaSafari only。 我已经使用meta禁用了缓存,但这没有帮助。 :(

<meta http-equiv="PRAGMA" content="NO-STORE" /> 
<meta http-equiv="Expires" content="-1" /> 
<meta http-equiv="CACHE-CONTROL" content="NO-STORE" /> 

请帮助..

回答

0

您能不能告诉你如何禁用缓存使用元?

浏览器使用一个单独的缓存机制的浏览器历史记录,即使你禁用缓存浏览器可能仍然存储浏览器历史记录的页面,Cache-Control: no-store标题应该防止存储页面,最好的方法是使用PHP而不是依赖元元素:

header("Cache-Control: no-store"); 

另请参见:What is CacheableCache-Control: no-cacheCache-Control: no-store

更新之间的区别:这并不在Opera工作,它的工作原理至少在Firefox和Chrome。

+0

但是标题(“Cache-Control:no-store”);也没有工作:( – viMaL 2010-08-27 08:42:55

+0

啊,我只是测试它,它似乎歌剧总是缓存页面用于它的历史。更多信息在这个问题上:http://stackoverflow.com/questions/2866826/how-do-i-stop -opera-from-caching-a-page – 2010-08-27 09:23:26

+0

但仍然没有得到解决方案,,,, – viMaL 2010-08-28 03:35:25

0

简短的回答:防止歌剧使用历史导航(后退/前进按钮)高速缓存的唯一方法是使用缓存控制,从而在页面通过HTTPS:必重新验证头。

+0

我们正在研究解决这个问题的方案,例如:http://www.ietf.org/ id/draft-pettersen-cache-context-05.txt 实际实施可能需要一些时间 - 待进一步讨论提案。 – hallvors 2010-09-03 10:13:57