我正在重做整個網站,瀏覽器正在使用處於相同URL的頁面的緩存index.html
。如何防止瀏覽器使用舊的緩存的index.html?
這是.htaccess
文件中的問題的一個目錄中的全部內容:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /products/
# Remove 'index.html' from the URL for old links that include it.
RewriteCond %{THE_REQUEST} ^.*\index\.html?\ HTTP/
RewriteRule ^(.*)index\.html?$ "/products/$1" [R=301,L]
# Use index.php for all requests.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule^/products/index.php [L]
</IfModule>
# An atempt to tell the browser not to use a cached .html file.
ExpiresActive on
ExpiresByType text/html "access plus 0 seconds"
<FilesMatch "\.(html)$">
Header set Cache-Control "private, must-revalidate"
</FilesMatch>
我在這裏已經試過許多東西,但沒有什麼工作。這是我在標題中看到的全部內容:
Request URL:http://www.example.com/products/
Request Method:GET
Status Code:200 OK (from cache)
沒有請求標頭或響應標頭。
我在想我可以嘗試一個RewriteRule來添加一些類似?28032012
的東西,但我不知道如何嘗試。
難道你們就不能修改自己的index.html頁面? http://stackoverflow.com/questions/748193/html-php-page-being-cached-client-side-when-it-should-not-be – 2012-03-28 19:59:37
我可以,但我需要儘快推住這個網站可能。 – JDavis 2012-03-28 20:03:42
它看起來像mod_expires根本不工作。您確定您已取消註釋LoadModule expires_module模塊/ mod_expires.so?在此之前,您應該清除瀏覽器的臨時文件。我希望這有幫助。 – huangli 2012-03-29 02:23:44