Перейти к содержанию
Официальный форум поддержки Simpla

использование кэш браузера в .Htaccess


Рекомендуемые сообщения

Приветствую форумчане!
Подскажите как грамотно закэшировать изображения, скрипты и css в .Htaccess c указанием времени жизни файлов. Решения которые находил в поиске ни один не подошел. PageSpeed все равно ругался на отсутствия использования кэша. Спасибо!

Ссылка на сообщение
Поделиться на другие сайты

хостинг "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>
Ссылка на сообщение
Поделиться на другие сайты
  • 1 год спустя...




<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>
 
Ссылка на сообщение
Поделиться на другие сайты

 


<IfModule mod_expires.c>
...
</ifModule>

 

Спасибо! Прописал, работает. А можете подсказать как включить сжатие? Пробовал так, но PageSpeed всё равно пишет "Включите сжатие".

Ссылка на сообщение
Поделиться на другие сайты

А что вам даст gzip? Тут на много не ускоришь загрузку страницы. Время отдачи ее уменьшится но обработка сервером увеличится...

 

Данный скрипт включает сжатие для жс и ксс.

Попробуйте добавить

после 
mod_gzip_item_include file \.css$
Это
mod_gzip_item_include mime ^text/.*
 
Ссылка на сообщение
Поделиться на другие сайты

А что вам даст gzip? Тут на много не ускоришь загрузку страницы. Время отдачи ее уменьшится но обработка сервером увеличится...

 

PageSpeed от Google пишет "Исправьте обязательно: Включите сжатие чтобы уменьшить объем передаваемых данных на 154,3 КБ (74 %)".

 

 

Попробуйте добавить

после 
mod_gzip_item_include file \.css$
Это
mod_gzip_item_include mime ^text/.*

 

Спасибо, добавил, но PageSpeed всё равно пишет "Включите сжатие..."

Ссылка на сообщение
Поделиться на другие сайты

Попробуйте так: 

<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>
 
Ссылка на сообщение
Поделиться на другие сайты

 

Попробуйте так: 

<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, спасибо за помощь.

Ссылка на сообщение
Поделиться на другие сайты
  • 1 год спустя...

 




<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 по прежнему пишет: "Используйте кеш браузера "

Может есть другие решения?

Изменено пользователем KostyanBr
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...