Как включить модуль expires?

  • 3 Ответов
  • 4403 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

MishOK

  • Осваиваюсь на форуме
  • ***
  • 66
  • 0
Как включить модуль expires?
« : 25.12.2013, 17:02:06 »
Добрый день!
Проверил сайт на скорость.
Сервис "PageSpeed" от Google обнаружил некоторые погрешности и дал рекомендации.
1)  Сжатие ресурсов с помощью функций gzip или deflate позволяет сократить объем данных, передаваемых по сети.
Включите сжатие
2)   Если указывать в заголовках HTTP дату или срок действия статических ресурсов, браузер будет загружать уже полученные ранее ресурсы с локального диска, а не из Интернета.
Используйте кэш браузера

На хостинге ник.ру в разделе управление модулями есть возможность включить expires_module и gzip_module (включил)
Но повторная проверка показала ноль изменений. А в поддержке хостера сказали, что нужно перевести сайт в ручное управление и править конфигурационные файлы. Перевел в ручное, появились в корневой папке \ etc каталоги "apache 1.3" и "nginx", в них файлы конфигурации.
На этом поддержка слилась, мол не подскажут ничего при ручном управлении.

Вот и вопрос что править, сам по форумам пошарился, нашел строки, которые надо вставить в nginx.conf итог - все повисло, пришлось снова перейти в автоматический режим.

Как быть? Что в итоге нужно сделать, чтобы эти модули заработали?

ЗЫ... Перестало пускать в админку... перегружается страница и ноль эффекта

*

MishOK

  • Осваиваюсь на форуме
  • ***
  • 66
  • 0
Re: Как включить модуль expires?
« Ответ #1 : 26.12.2013, 11:49:36 »
Поговорил с поддержкой руцэнтра...
Говорят нет смысла править конфигурационные файлы nginx и apache/
Требуемый результат можно получив через файл .htaccess
Внес в него строки:

<IfModule mod_expires.c>
  ExpiresActive on
 
  ExpiresDefault                              "access plus 1 month"
  ExpiresByType text/cache-manifest           "access plus 1 hour"
  ExpiresByType text/html                     "access plus 1 hour"
  ExpiresByType text/xml                      "access plus 1 hour"
  ExpiresByType application/xml               "access plus 1 hour"
  ExpiresByType application/json              "access plus 1 hour"
  ExpiresByType application/rss+xml           "access plus 1 hour"
  ExpiresByType image/x-icon                  "access plus 1 week"
  ExpiresByType image/gif                     "access plus 1 month"
  ExpiresByType image/png                     "access plus 1 month"
  ExpiresByType image/jpg                     "access plus 1 month"
  ExpiresByType image/jpeg                    "access plus 1 month"
  ExpiresByType video/ogg                     "access plus 1 month"
  ExpiresByType audio/ogg                     "access plus 1 month"
  ExpiresByType video/mp4                     "access plus 1 month"
  ExpiresByType video/webm                    "access plus 1 month"
  ExpiresByType text/x-component              "access plus 1 month"
  ExpiresByType font/truetype                 "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"
  ExpiresByType text/css                      "access plus 1 year"
  ExpiresByType application/javascript        "access plus 1 year"
  ExpiresByType text/javascript               "access plus 1 year"
  <IfModule mod_headers.c>
  Header append Cache-Control "public"
  </IfModule>
</IfModule>

Подскажите правильно ли это?

*

maxpa

  • Осваиваюсь на форуме
  • ***
  • 65
  • 2
Re: Как включить модуль expires?
« Ответ #2 : 05.04.2015, 11:55:10 »
Так никто ничего и не подсказал(( Столкнулся с подобной проблемой. Также воспользовался htaccess, поскольку с nginx.conf ничего не получается)) Но не уверен что правки в htaccess сработали поскольку YSlow все равно кажет на проблему Add Expires headers

*

maxpa

  • Осваиваюсь на форуме
  • ***
  • 65
  • 2
Re: Как включить модуль expires?
« Ответ #3 : 05.04.2015, 12:34:13 »
Отвечу, мб кому пригодиться - замучал я таки тп хостинга. Они сказали что надо просто в файле /etc/nginx/nginx.conf после строки "http {" вставить строку "expires max;" . После этого замечания YSlow об Add Expires headers пропали. Также в этом же файле включил gzip из какого то мануала - вроде все работает и показатели gtmetrix улучшились.
Код
 
gzip on;
gzip_min_length  1100;
# Разрешает или запрещает сжатие ответа методом gzip для проксированных запросов в зависимости от запроса и ответа.
gzip_proxied     expired no-cache no-store private auth;
# Разрешает сжатие ответа методом gzip для указанных MIME-типов в дополнение к text/html, который сжимается всегда.
gzip_types       text/plain application/xml application/x-javascript text/javascript text/css;
# Запрещаем сжатие gzip для IE6. Специальная маска “msie6” (0.7.12) соответствует рег. выражению “MSIE [4-6]\.”, но работает быстрее. Начиная с версии 0.8.11, из этой маски исключается “MSIE 6.0; ... SV1”.
gzip_disable     "msie6";
# Уровень gzip-компрессии. Больше пяти не имеет смысла
gzip_comp_level 4;