SEO Сообщество: Спрашивайте и помогайте

Присоединяйтесь к сообществу профессиональных веб-мастеров PR-CY, отвечайте на вопросы коллег и задавайте свои.

Q&A SEO

Кэш, css, js. Что нужно включить?

PENSIONEER PENSIONEER  
46
  14.10.2016 22:44       2 646    
Народ, подскажите пожалуйста! На тестах постоянно просит включить кэш! Сервер виртуальный-подключен как опция для ускорения скриптов. Может чего в самом DLE изменить нужно (в админке кэширование включено)? В чем может быть косяк? И постоянно мне в тэсте пишет про блокирующий скрипт, как его отключить (подозреваю что в каком то файле шаблона)?

Ответы на пост (8) Написать ответ
Ninoi Ninoi
292
14.10.2016 23:08
Добавить в файл .htaccess
<ifModule mod_headers.c>
#кэшировать html и htm файлы на один день
<FilesMatch "\.(html|htm)$">
Header set Cache-Control "max-age=43200"
</FilesMatch>
#кэшировать css, javascript и текстовые файлы на одну неделю
<FilesMatch "\.(js|css|txt)$">
Header set Cache-Control "max-age=604800"
</FilesMatch>
#кэшировать флэш и изображения на месяц
<FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
#отключить кэширование
<FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
Header unset Cache-Control
</FilesMatch>
</IfModule>
<ifModule mod_expires.c>
ExpiresActive On
#по умолчанию кеш в 5 секунд
ExpiresDefault "access plus 5 seconds"
#кэшировать флэш и изображения на месяц
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
#кэшировать css, javascript и текстовые файлы на одну неделю
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 604800 seconds"
ExpiresByType application/javascript "access plus 604800 seconds"
ExpiresByType application/x-javascript "access plus 604800 seconds"
#кэшировать html и htm файлы на один день
ExpiresByType text/html "access plus 43200 seconds"
#кэшировать xml файлы на десять минут
ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
0
Решение
mozgsupport mozgsupport
193
15.10.2016 07:53
Этот код в тхас только для дле подходит или и на другие движки работает?
0
sansan sansan
1680
15.10.2016 11:23
Аккуратней стоит. Смотреть на суть строчек и обозначенное время.
Штука мощная, гл без понимания суть-прописанного может и навредить.

Можно покороче:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 5 seconds"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 month"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
ExpiresByType video/mpeg "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 month"
ExpiresByType video/quicktime "access plus 1 month"
ExpiresByType application/xhtml+xml "access plus 600 seconds"
</IfModule>

А можно и добавить:

<ifModule mod_headers.c>
<FilesMatch "\.(html|htm)$">
Header set Cache-Control "max-age=43200"
</FilesMatch>

<FilesMatch "\.(js|css|txt)$">
Header set Cache-Control "max-age=604800"
</FilesMatch>

<FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>

<FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
Header unset Cache-Control
</FilesMatch>
</IfModule>

.htaccess штука интересная. Жаль, мало знатоков вопроса.
0
PENSIONEER PENSIONEER
46
14.10.2016 23:18
Спасибо! на https://developers.google.com скорость с 65/100 выросла до 82/100
0
sansan sansan
1680
15.10.2016 11:26
Ежли пропишите правила gzip - скорость и до 100 "скакнет" :)
Причем - куда более ощутимо для пользователей, нежели настройка кэш.
0
PENSIONEER PENSIONEER
46
15.10.2016 14:03
А как прописать правила сжатия? Вроде в админке dle оно включено, но это нужно думать для родных файлов, а допустим сторонним модулям и шаблонам как и где сжатие указать?
0
sansan sansan
1680
15.10.2016 16:26
Хм... Вы уверены, что хотите это знать?..
Долго прописывать, просто. если уж нужно... ну, ладно.

Я провёл много экспериментов с gzip. Оч много. Не уверен уже, что это важно. Причина: Гугл практически не отметил разницы в выдаче. Я уменьшил скорость с 1.5 на 0.2 Разница в выдаче = 0 Усилий потрачено - много.

Вопрос "скорость загрузки страниц" весьма и весьма. Интересен. Как в своем прктическом применении, так и в тестах (что только - направляют мысль, но не делают тебя - рабом).

Гугл идет (имхо) правильным путём "мягкого" воспитания веб-мастеринга.
0
sansan sansan
1680
15.10.2016 16:30
Я не ответил на gzip вопрос
Не ответил. Черт... эт моё ноу-хау :). Не могу, пока что. Оттестирую, еще пол-годика.
Есть прием в Сети, пассивное зипование выдачи. Почитайте, любопытно.
0