Rash Опубликовано 11 декабря, 2012 Жалоба Поделиться Опубликовано 11 декабря, 2012 Приветствую форумчане!Подскажите как грамотно закэшировать изображения, скрипты и css в .Htaccess c указанием времени жизни файлов. Решения которые находил в поиске ни один не подошел. PageSpeed все равно ругался на отсутствия использования кэша. Спасибо! Цитата Ссылка на сообщение Поделиться на другие сайты
iluwka Опубликовано 12 декабря, 2012 Жалоба Поделиться Опубликовано 12 декабря, 2012 какие решения использовались? Цитата Ссылка на сообщение Поделиться на другие сайты
Rash Опубликовано 12 декабря, 2012 Автор Жалоба Поделиться Опубликовано 12 декабря, 2012 хостинг "www.host-food.ru"RewriteEngine OnRewriteCond %{REQUEST_URI} !index\.php$RewriteCond %{REQUEST_URI} !\.jpg$RewriteCond %{REQUEST_URI} !\.gif$RewriteCond %{REQUEST_URI} !\.png$RewriteCond %{REQUEST_URI} !\.js$RewriteCond %{REQUEST_URI} !\.txt$RewriteCond %{REQUEST_URI} !\.xml$RewriteCond %{REQUEST_URI} !\.html$RewriteCond %{REQUEST_URI} !\.htm$RewriteCond %{REQUEST_URI} !\.mid$RewriteCond %{REQUEST_URI} !\.avi$RewriteCond %{REQUEST_URI} !\.css$# кеширование в браузере на стороне пользователя<IfModule mod_expires.c>ExpiresActive OnExpiresDefault "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"</IfModule># использование кэша браузераFileETag MTime Size<ifmodule mod_expires.c><filesmatch ".(jpg|jpeg|gif|png|ico|css|js)$">ExpiresActive onExpiresDefault "access plus 1 year"</filesmatch></ifmodule> Цитата Ссылка на сообщение Поделиться на другие сайты
Rash Опубликовано 15 декабря, 2012 Автор Жалоба Поделиться Опубликовано 15 декабря, 2012 iluwkaи тишина... Цитата Ссылка на сообщение Поделиться на другие сайты
Milkikilki Опубликовано 21 июля, 2014 Жалоба Поделиться Опубликовано 21 июля, 2014 Подключаюсь к вопросу, очень актуально Цитата Ссылка на сообщение Поделиться на другие сайты
yr4ik Опубликовано 21 июля, 2014 Жалоба Поделиться Опубликовано 21 июля, 2014 <IfModule mod_expires.c> 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" </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> Цитата Ссылка на сообщение Поделиться на другие сайты
Scodch Опубликовано 23 июля, 2014 Жалоба Поделиться Опубликовано 23 июля, 2014 <IfModule mod_expires.c> ... </ifModule> Спасибо! Прописал, работает. А можете подсказать как включить сжатие? Пробовал так, но PageSpeed всё равно пишет "Включите сжатие". Цитата Ссылка на сообщение Поделиться на другие сайты
yr4ik Опубликовано 23 июля, 2014 Жалоба Поделиться Опубликовано 23 июля, 2014 А что вам даст gzip? Тут на много не ускоришь загрузку страницы. Время отдачи ее уменьшится но обработка сервером увеличится... Данный скрипт включает сжатие для жс и ксс.Попробуйте добавить после mod_gzip_item_include file \.css$ Это mod_gzip_item_include mime ^text/.* Цитата Ссылка на сообщение Поделиться на другие сайты
Scodch Опубликовано 23 июля, 2014 Жалоба Поделиться Опубликовано 23 июля, 2014 А что вам даст gzip? Тут на много не ускоришь загрузку страницы. Время отдачи ее уменьшится но обработка сервером увеличится... PageSpeed от Google пишет "Исправьте обязательно: Включите сжатие чтобы уменьшить объем передаваемых данных на 154,3 КБ (74 %)". Попробуйте добавить после mod_gzip_item_include file \.css$ Это mod_gzip_item_include mime ^text/.* Спасибо, добавил, но PageSpeed всё равно пишет "Включите сжатие..." Цитата Ссылка на сообщение Поделиться на другие сайты
yr4ik Опубликовано 23 июля, 2014 Жалоба Поделиться Опубликовано 23 июля, 2014 Что за сервер? страницу phpinfo можете показать? Цитата Ссылка на сообщение Поделиться на другие сайты
Scodch Опубликовано 23 июля, 2014 Жалоба Поделиться Опубликовано 23 июля, 2014 Что за сервер? страницу phpinfo можете показать? Apache Цитата Ссылка на сообщение Поделиться на другие сайты
yr4ik Опубликовано 23 июля, 2014 Жалоба Поделиться Опубликовано 23 июля, 2014 Попробуйте так: <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/css <IfModule mod_setenvif.c> BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html </IfModule> </IfModule> Цитата Ссылка на сообщение Поделиться на другие сайты
Scodch Опубликовано 23 июля, 2014 Жалоба Поделиться Опубликовано 23 июля, 2014 Попробуйте так: <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/css <IfModule mod_setenvif.c> BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html </IfModule> </IfModule> Попробовал, не работает.Написал в тех. поддержку хостинга. Они написали, что Gzip включается с их стороны, включили. Всё работает!yr4ik, спасибо за помощь. Цитата Ссылка на сообщение Поделиться на другие сайты
KostyanBr Опубликовано 27 января, 2016 Жалоба Поделиться Опубликовано 27 января, 2016 (изменено) <IfModule mod_expires.c> 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" </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> Прописал, но что то не работает. PageSpeed Insights по прежнему пишет: "Используйте кеш браузера "Может есть другие решения? Изменено 27 января, 2016 пользователем KostyanBr Цитата Ссылка на сообщение Поделиться на другие сайты
KostyanBr Опубликовано 28 января, 2016 Жалоба Поделиться Опубликовано 28 января, 2016 Разобрался. Оказывается работает только на VPS серверах. Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.