@CapitanFreeloader

Gzip или deflate и apache+nginx как быть?

Столкнулся с проблемой - гугл требует (категорически требует) включить Gzip или deflate сжатие. На хостинге установлена связка apache+nginx потому включить возможности нет (как объяснили мне в цпп, предложили только оставить апач и работать с ним, но тогда просядет производительность). Как лучше поступить в данном случае? Гайдов по настройке при apache+nginx я не нашел, сайт на wp.

UPD
Вот ответ сервера (тестил яндексом):
Server: nginx
Date: Sat, 03 Dec 2016 07:29:14 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 12267
Connection: keep-alive
Keep-Alive: timeout=5
X-Powered-By: PHP/7.0.12
Cache-Control: max-age=0
Expires: Sat, 03 Dec 2016 07:29:14 GMT
Vary: Accept-Encoding,User-Agent
Content-Encoding: gzip
  • Вопрос задан
  • 1864 просмотра
Пригласить эксперта
Ответы на вопрос 1
@CapitanFreeloader Автор вопроса
Вывод как быть, мб кому пригодится (спасибо Руслан за его вклад):
для wp:
  1. В .htaccess в начало вставляем код
    # кеширование в браузере на стороне пользователя
    <IfModule mod_expires.c>
    #Включаем поддержку директивы Expires
     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>
    
    # использование кеша браузеров
    FileETag MTime Size
    <ifmodule mod_expires.c>
    <filesmatch ".(jpg|jpeg|gif|png|ico|css|js)$">
    ExpiresActive on
    ExpiresDefault "access plus 1 year"
    </filesmatch>
    </ifmodule>
    
    #Запрет отдачи HTTP-заголовков Vary браузерам семейства MSIE
    <IfModule mod_setenvif.c>
    BrowserMatch "MSIE" force-no-vary
    BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary
    </IfModule>

  2. Далее устанавливаем плагин wp rocket (мб пригодится про версия бесплатно)


Для изображений использую wp smush (про версию можно найти на сайте в wp rocket вбив в поиске)

Мои настройки wp rocket: включаем varnish, ставим галочки для всех файлов (пункт оптимизация файлов и даже js+css).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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