2014-07-07 44 views
0

我在我的PHP頁面上使用Javascrip(window.location.reload())的「刷新」按鈕,以便用戶可以更新頁面。如何實現刷新按鈕,它尊重緩存

不幸的是,該頁面包含一些Javascript和CSS庫(例如jQuery),這些類庫的刷新也會重新加載。

這些庫在未來的Expires:header中進行了編輯,當用戶只需要主URL時,Firefox不會重新加載庫。但使用刷新按鈕,Firefox發送「Cach-Control:max-age:0」標題,所有庫都會重新加載。

+0

也許這個回答可以幫助你[如何設置CSS/JS文件緩存] [1] [1]:http://stackoverflow.com/questions/2537185/how-to-set -cache-for-css-js-file#2538387 – fermin

+0

我已經發送類似於該答案的Expires和Cache-Control標題。但Firefox的max-age:0會殺死所有這些... –

+1

如果將按鈕javascript更改爲href =「#」? 或者可能改變window.location.href? – fermin

回答

0

我不得不禁用ETags(ETags none)以使緩存生效,因此服務器將以304響應庫請求。

將按鈕更改爲<a href="<?php echo "$_SERVER[SCRIPT_NAME]" ?>">Refresh</a>得到了請求。