Как запретить браузерам использовать старый кэшированный index.html? - PullRequest
2 голосов
/ 28 марта 2012

Я переделываю весь веб-сайт, и браузер использует кэшированные index.html страниц с одинаковым URL.

Это все содержимое файла .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до конца чего-то, но я не знаю, как даже попытаться это сделать.

Ответы [ 4 ]

0 голосов
/ 23 октября 2017

Это работает для меня.

<IfModule mod_headers.c>
    Header set Cache-Control "no-cache, no-store, must-revalidate"
    Header set Pragma "no-cache"
    Header set Expires 0
</IfModule>

Ссылка: https://wp -mix.com / disable-caching-htaccess /

0 голосов
/ 29 марта 2012

Вы можете просто добавить /?в конце вашего URL.Пример:

www.google.com/?
0 голосов
/ 13 августа 2012

Решение, которое я использовал для этого, заключалось в том, чтобы перенаправить все запросы www на запросы не www. Таким образом, в принципе, этот подход не позволял любым браузерам использовать какие-либо кэшированные ресурсы, поскольку версия сайта www больше не существует.

0 голосов
/ 28 марта 2012

Я читал, что добавление? Version = <% = version%> к проблемным именам файлов является хорошим методом очистки кэша.В качестве более простого решения вы также можете использовать http-заголовок «cache-control: max-age = 600», чтобы все данные на странице старше 10 минут извлекались с сервера.

...