Перейти к содержимому

MOAB

- - - - -

Сжатие файлов по рекомендации page speed

сжатие файлов gzip сжатие

  • Войдите, чтобы ответить
Сообщений в теме: 2

#1 imtecseo

imtecseo

    Новенький

  • Новичок
  • Pip
  • 4 сообщений

Отправлено 17 Сентябрь 2015 - 11:15

На большинстве хостингов данная функция реализована, но если инструмент pagespeed говорит об обратном, не расстраивайтесь. Включить сжатие gzip можно двумя способами.

Первый способ - динамическое сжатие путём добавления в файл .htaccess следующего кода:
1
# сжатие text, html, javascript, css, xml:
2
<ifModule mod_deflate.c>
3
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/css text/javascript application/javascript application/x-javascript
4
</ifModule>
Мы включаем модуль отвечающий за сжатие файлов.

Если не помогло, то есть второй вариант статического сжатия. Файлы шаблона с расширение .css .js сжимаем архиватором 7-zip (бесплатная программа архиватор) в формат gzip, заливаем на хостинг по фтп в соответствующие папки и добавляем в файл .htaccess вставляем следующий код:
01
# Перенаправление на gzip файлы
02
AddEncoding gzip .gz

03
<FilesMatch "\.js.gz$">

04
ForceType text/javascript

05
Header set Content-Encoding: gzip

06


07
<FilesMatch "\.js$">

08
RewriteEngine On




09
RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
10
RewriteCond %{HTTP:Accept-Encoding} gzip
11
RewriteCond %{REQUEST_FILENAME}.gz -f
12
RewriteRule (.*)\.js$ $1\.js.gz [L]

13
ForceType text/javascript

14


15
<FilesMatch "\.css.gz$">

16
ForceType text/css

17
Header set Content-Encoding: gzip

18


19
<FilesMatch "\.css$">

20
RewriteEngine On

21
RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
22
RewriteCond %{HTTP:Accept-Encoding} gzip
23
RewriteCond %{REQUEST_FILENAME}.gz -f

24
RewriteRule (.*)\.css$ $1\.css.gz [L]

25
ForceType text/css
Если не помог ни один метод, то рекомендую обратиться в службу технической поддержки Вашего хостинга с просьбой о включении gzip сжатия файлов, бывает так, что данная функция отключена со стороны хостинга.

#2 protector

protector

    Почетный

  • Основатель
  • PipPipPipPipPip
  • 2 979 сообщений
1 569
  • ИзСанкт-Петербурга

Отправлено 22 Сентябрь 2015 - 13:19

Если более кратко, то в htaccess нужно вставить следующий код:
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
Header append Vary User-Agent
</IfModule>
 
<ifModule mod_gzip.c>
   mod_gzip_on Yes
   mod_gzip_dechunk Yes
   mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
   mod_gzip_item_include handler ^cgi-script$
   mod_gzip_item_include mime ^text/.*
   mod_gzip_item_include mime ^application/x-javascript.*
   mod_gzip_item_exclude mime ^image/.*
   mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>
Возможно, что есть лишнее. Но у меня в таком варианте работает.

#3 madcap

madcap

    Мастер

  • Старая гвардия
  • PipPipPipPip
  • 821 сообщений
742
  • ИзМосквы

Отправлено 22 Сентябрь 2015 - 15:04

Просмотр сообщенияprotector (22 Сентябрь 2015 - 13:19) писал:

Если более кратко, то в htaccess нужно вставить следующий код:
Сработает только на голом Апаче.
Если в связке с nginx они стоят, то сжатие надо в конфиге nginx'a настраивать. И кстати в нём же можно степень сжатия настроить - либо отдавать быстрее и слабее сжимать, либо сжимать основательнее, но за счёт потери времени отдачи файлов.
Думаю идеальна та структура, при которой сжатые файлы js и css уже хранятся на сервере, а не сжимаются на лету, пожирая ресурсы. И обновляются на нём скажем раз в час, или в сутки, или в неделю - если в них изменений не вносилось.



Похожие темы


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных



© 2018 SMO&SEO форум «WEBIMHO» — продвижение и создание сайтов, интернет-маркетинг

По вопросам рекламы на форуме и цены на рекламу
Все материалы SEO форума разрешены к копированию только с установкой гиперактивной ссылки на webimho.ru,
тем, кто этого не сделает, мы оторвем руки и ноги и поменяем местами,
а когда выйдем из тюрьмы, опять оторвем и опять поменяем.


Россия, г. Москва

Мы в соцсетях: twitter | вконтакте | facebook | livejournal