2011-12-13 34 views
0

已經閱讀this question我還沒有設法弄清楚我的網頁http://opentox.ntua.gr/vlab/pid/被Opera緩存會出現什麼問題。這是如何重現該問題:使用OperaOpera忽略標題中的緩存指令

  1. 導航到http://opentox.ntua.gr/vlab/pid/(版本11.60,構建1185,對於Linux)
  2. 不修改任何參數 - 只需點擊運行。等一下,你會看到一些圖表。
  3. 現在選中複選框「Open Loop」並再次點擊Run。你應該得到不同的結果,但你沒有。圖像被緩存,並且不會重新加載。
  4. 強制重新加載第一個圖像:右鍵單擊圖像並單擊「重新加載圖像」。你會注意到,重新加載的圖像,並已改變...

現在轉到工具>首選項>高級>歷史。並將「Memory Cache」設置爲「Off」,「Check Documents」爲「Always」和「Check Images」爲「Always」。點擊「立即清空」並退出。然後,問題就解決了。有沒有辦法通過指定HTML文檔的正確頭部來強制Opera重新加載圖像,而不是讓用戶全局更改其配置?

注意,問題不與其他瀏覽器和HTML文檔已經包括在其頭部下面的指令重現:

<meta http-equiv="Pragma" content="no-cache"/> 
<meta http-equiv="CACHE-CONTROL" content= 
    "no-store, no-cache, must-revalidate, 
    post-check=0, pre-check=0, max-age=0"/> 
<meta http-equiv="Expires" content="0"/> 

回答

3

圖形文件,有自己的頭在你的情況下緩存信息巫婆告訴歌劇它的可以使用緩存文件 - 你可以使用例如firebug來查看頭文件。 嘗試這個添加這樣的事情你的.htaccess

更多這裏面http://httpd.apache.org/docs/2.0/mod/mod_expires.html

<IfModule mod_expires.c> 
    ExpiresActive On 
    ExpiresByType image/gif "access plus 1 second" 
    ExpiresByType image/jpeg "access plus 1 second" 
    ExpiresByType image/png "access plus 1 second" 
</IfModule> 

它應該工作,但可能有把它寫一個更清潔的方式 - 我不是的.htaccess的專家。

你也可以通過php腳本來提供文件,首先用no-cache吐出一個適當的頭文件,然後寫出從hd讀取的gif文件。 希望這有助於。

+0

非常感謝!有效! –