Каким образом можно включить gzip сжатие страниц

Материал из DiPHOST.Ru wiki system

(Различия между версиями)
Перейти к: навигация, поиск
Строка 3: Строка 3:
<meta name="title" content="Каким образом можно включить gzip сжатие страниц"></meta>
<meta name="title" content="Каким образом можно включить gzip сжатие страниц"></meta>
-
=== Модулем Apache mod_deflate ===
+
=== Настройка веб-сервера ===
 +
Можно использовать специальный модуль веб-сервера apache.  Для автоматического сжатия текстовых файлов достаточно добавить в файл .htaccess:
 +
 +
<IfModule deflate_module>
 +
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/x-js text/javascript text/css
 +
    AddOutputFilterByType DEFLATE application/xml application/xhtml+xml
 +
    AddOutputFilterByType DEFLATE application/x-javascript application/javascript
 +
    AddOutputFilterByType DEFLATE application/json
 +
</IfModule>
 +
 +
=== Сжатие вручную ===
Большие css и js можно на  свой страх и риск самостоятельно сжать. Попробуйте
Большие css и js можно на  свой страх и риск самостоятельно сжать. Попробуйте
Строка 39: Строка 49:
В результате все обращения браузера к js и css файлам будут перенаправляться на их
В результате все обращения браузера к js и css файлам будут перенаправляться на их
сжатые копии, а  браузеру будет сообщаться, что эти файлы упакованы в gzip.  
сжатые копии, а  браузеру будет сообщаться, что эти файлы упакованы в gzip.  
 +
 +
=== Сжатия статики, отдаваемой Nginx ===
 +
 +
[[Category:HowTo]]
[[Category:HowTo]]

Версия 16:10, 8 декабря 2014

Настройка веб-сервера

Можно использовать специальный модуль веб-сервера apache. Для автоматического сжатия текстовых файлов достаточно добавить в файл .htaccess:

<IfModule deflate_module>
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/x-js text/javascript text/css 
    AddOutputFilterByType DEFLATE application/xml application/xhtml+xml 
    AddOutputFilterByType DEFLATE application/x-javascript application/javascript
    AddOutputFilterByType DEFLATE application/json
</IfModule>

Сжатие вручную

Большие css и js можно на свой страх и риск самостоятельно сжать. Попробуйте упаковать файлы css и js в gzip так, чтобы рядом с исходными файлами находились их упакованные версии с расширением gz (например style.css.gz) Это можно сделать через консоль SSH такой командой:

gzip my_big_file.css > my_big_file.css.gz

После этого в файл .htaccess вашего сайта надо будет прописать:

RewriteEngine on

RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.css $1\.css\.gz [QSA]

RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.js $1\.js\.gz [QSA]

<FilesMatch .*\.js\.gz$>
   ForceType text/javascript
   Header set Content-Encoding gzip
   Header append Vary Accept-Encoding
</FilesMatch>

<FilesMatch .*\.css\.gz$>
   ForceType text/css
   Header set Content-Encoding gzip
   Header append Vary Accept-Encoding
</FilesMatch>

В результате все обращения браузера к js и css файлам будут перенаправляться на их сжатые копии, а браузеру будет сообщаться, что эти файлы упакованы в gzip.

Сжатия статики, отдаваемой Nginx

Источник — «https://wiki.diphost.ru/Gzip-encoding»

Категория:

Личные инструменты
© 2006 — ООО «Дремучий лес»
Служба техподдержки: [email protected]
Тексты этого сайта являются полностью оригинальными
или оригинальными компиляциями ООО «Дремучий Лес».
Распространяются по лицензии WTFPL
Отзывы о хостинге diphost.ru Отзывы на hostobzor.ru