Вступление
Сжатие контента перед его отправкой по сети не только экономит полосу пропускания, но и ускоряет работу веб-приложений. Общее время, необходимое веб-серверу для сжатия данных и браузеру для его распаковки, меньше, чем отправка несжатых данных по проводам. В этой записи показано, как настроить Apache и Nginx со сжатием gzip.
апаш
Добавьте приведенный ниже фрагмент к вашему apache2.conf
или .htaccess
файлу.
<IfModule mod_deflate.c>
# compress html, css, javascript, text, xml and fonts
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
# you can also compress by file type/extension:
<files *.html>
SetOutputFilter DEFLATE
</files>
</IfModule>
Nginx
Gzip уже должен быть включен в Nginx по умолчанию. Если нет, откройте его файл конфигурации ( sudo nano /etc/nginx/nginx.conf
) и убедитесь, что настройки в разделе gzip не закомментированы (как в фрагменте ниже).
##
# Gzip Settings
##
gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
Автор Лами Адабонян