Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Используйте кеш браузера?! Как настроить?

Используйте кеш браузера?! Как настроить?


     11.06.2016    Все вопросы » Общие вопросы    2883

вопрос
Проверил тут сайт и ужаснулся

Используйте кеш браузера?! Как настроить?


Покопался в интернете, нашел что нужно прописать в файле .htaccess вот этот код

# кеширование в браузере на стороне пользователя

ExpiresActive On
ExpiresDefault "access 7 days"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/html "access plus 7 day"
ExpiresByType text/x-javascript "access 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/x-icon "access 1 year"
ExpiresByType application/x-shockwave-flash "access 1 year"


# Cache-Control

# 30 дней

Header set Cache-Control "max-age=2592000, public"

# 30 дней

Header set Cache-Control "max-age=2592000, public"

# 2 дня

Header set Cache-Control "max-age=172800, public, must-revalidate"

# 1 день

Header set Cache-Control "max-age=172800, private, must-revalidate"



#Запрет отдачи HTTP-заголовков Vary браузерам семейства MSIE

BrowserMatch "MSIE" force-no-vary
BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary


Прописал, но ничего собственно не изменилось, что делать?

Ответа пока нет


4 комментария

bogdan
Юзер

bogdan - 11 июня 2016 13:16 -

Напиши хостеру, чтоб включили кеш статики на 12 дней. Они тебе включат, и все будет окей.

Апельсин
Юзер

Апельсин - 11 июня 2016 16:51 -

У меня работает этот вариант. Работает на apache! mod_expires должен быть установлен. После этого чистишь кэш в админке и радуешься.


<IfModule mod_expires.c>
    ExpiresActive on

    ExpiresDefault "access plus 1 month"

    # cache.appcache needs re-requests in FF 3.6 (thanks Remy ~Introducing HTML5)
    ExpiresByType text/cache-manifest "access plus 0 seconds"

    # html
    ExpiresByType text/html "access plus 0 seconds"

    # XML
    ExpiresByType text/xml "access plus 0 seconds"
    ExpiresByType application/xml "access plus 0 seconds"

    # RSS
    ExpiresByType application/rss+xml "access plus 1 hour"

    # Favicon
    ExpiresByType image/x-icon "access plus 1 week"

    # Картинки
    ExpiresByType image/gif "access plus 1 month"
    ExpiresByType image/png "access plus 1 month"
    ExpiresByType image/jpeg "access plus 1 month"
    ExpiresByType image/jpg "access plus 1 month"

    # HTC файлы  (например css3pie)
    ExpiresByType text/x-component "access plus 1 month"

    # Нестандартные шрифты сайта
    ExpiresByType application/x-font-ttf "access plus 1 month"
    ExpiresByType font/opentype "access plus 1 month"
    ExpiresByType application/x-font-woff "access plus 1 month"
    ExpiresByType image/svg+xml "access plus 1 month"
    ExpiresByType application/vnd.ms-fontobject "access plus 1 month"

    # CSS и javascript
    ExpiresByType text/css "access plus 1 year"
    ExpiresByType application/javascript "access plus 1 year"

</IfModule>

# Cache-Control браузера
<ifModule mod_headers.c>
    # 30 дней
    <filesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
    Header set Cache-Control "max-age=2592000, public"
    </filesMatch>
    # 30 дней
    <filesMatch "\.(css|js)$">
    Header set Cache-Control "max-age=2592000, public"
    </filesMatch>
    # 2 дня
    <filesMatch "\.(xml|txt)$">
    Header set Cache-Control "max-age=172800, public, must-revalidate"
    </filesMatch>
    # 1 день
    <filesMatch "\.(html|htm|php)$">
    Header set Cache-Control "max-age=172800, private, must-revalidate"
    </filesMatch>
</ifModule>

<IfModule mod_setenvif.c>
    #Эта конструкция для говнобраузера
    #Запрет отдачи HTTP-заголовков Vary
    BrowserMatch "MSIE" force-no-vary
    BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary
</IfModule>

xukosmm
Юзер

xukosmm - 11 июня 2016 21:17 -

Не работает.

Написал я хостеру, вот что он мне ответил "Здравствуйте!
Необходимости в нем нет, так как используется ETag"

И что это значит?

ПафНутиЙ
Админ

ПафНутиЙ - 12 июня 2016 14:58 -

Значит пора к другому хостеру.
Ну и настраивать вам нужно не apache, a nginx т.к. раздачей статики занимается именно он.

Каков вопрос - таков и ответ. Просто помните об этом.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх