2014-07-15 96 views
0

我試圖設置適當的緩存,但是我無法獲取動態部分。防止動態(php)內容的緩存

您可以看到該網站在這裏的問題:nathanhornby.com 這裏回購:https://github.com/nathanhornby/nathanhornby.com

正如你會看到有3個在底部飼料。問題是,如果現在加載頁面,它似乎被緩存,因此每次加載時都會看到完全相同的內容,需要用戶強制刷新以查看新內容,這自然不切實際。

**注意:**我說的是頁面緩存,而不是提要緩存。供稿緩存,這是故意的,但如果供稿發生更改,則僅在用戶刷新時纔會反映出來。 '之前'是一樣的。如果它在第一次加載它時說'9分鐘前',它會在下次加載它時說同樣的事情。但刷新頁面會更新那個時間。

你可以看到我的.htaccess設置在這裏:https://github.com/nathanhornby/nathanhornby.com/blob/master/.htaccess

我希望這部分做什麼,我需要的,但它似乎沒有作用:

# Disable Caching for PHP <FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$"> Header unset Cache-Control </FilesMatch>

什麼是最好的方式確保新鮮的內容在加載時提供服務,而不需要刷新?

回答

1

你說你想要新鮮的內容沒有刷新頁面。爲此,您將需要其他的東西,如JQuery和AJAX,禁用緩存不會使頁面不刷新而自己更新。

這是你要找的嗎?

<FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$"> 
    FileETag None 
    <ifModule mod_headers.c> 
     Header unset ETag 
     Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate" 
     Header set Pragma "no-cache" 
     Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT" 
    </ifModule> 
</FilesMatch> 

來源:http://www.askapache.com/htaccess/using-http-headers-with-htaccess.html

+0

嗨。 「你說你想要新的內容而不刷新頁面。」不,我不想在刷新頁面時重新訪問頁面,而是需要新內容。 –

+0

您的答案的第二位可能是我需要的,會有小提琴! –

+1

是的,謝謝! –