Установка модуля pagespeed для Nginx на Debian 6

Источник: habrahabr
yuri-it

Уже несколько лет как Google выпустила модуль для Web-серверов Apache и Nginx, который представляет из себя набор фильтров и позволяет значительно повысить производительность сайта. В данном посте речь пойдет не о технологии и описании модуля, а о его установке и базовой настройке. Описание установки будет проведено только для Nginx. Установка модуля на Apache проста до безобразия и в данной статье не затрагивается.

Приступим


Для начала создаем каталог на сервере, у меня это каталог" "temp":
cd /temp
Загружаем и распаковываем исходники модуля:
wget github.com/pagespeed/ngx_pagespeed/archive/v1.7.30.1-beta.zip
unzip v1.7.30.1-beta.zip
cd ngx_pagespeed-1.7.30.1-beta
Загружаем и распаковываем PSOL:
wget dl.google.com/dl/page-speed/psol/1.7.30.1.tar.gz
tar -xzvf 1.7.30.1.tar.gz
Загружаем последнюю стабильную версию NGINX:
wget nginx.org/download/nginx-1.4.5.tar.gz
tar -xvzf nginx-1.4.5.tar.gz
cd nginx-1.4.5/

Далее важный момент, в большинстве случаев, при установке из репозиториев, nginx ставится в каталог /etc/nginx, однако при установке из исходников каталог установки отличается. Если ставите NGINX в первый раз это не критично, но если вы хотите обновить текущую версию, то необходимо прописать в явном виде пути, в моем случае следующий шаг:
./configure --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --sbin-path=/usr/sbin/nginx --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/body --http-proxy-temp-path=/var/lib/nginx/proxy --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --http-scgi-temp-path=/var/lib/nginx/scgi --prefix=/var/lib/nginx --with-http_stub_status_module --with-http_flv_module --with-http_ssl_module --with-http_dav_module --with-http_sub_module --with-http_realip_module --with-http_gzip_static_module --with-http_secure_link_module --with-ipv6 --with-debug --add-module=/temp/ngx_pagespeed-1.7.30.1-beta

Убедившись в отсутствии ошибок выполняем установку:
make
checkinstall

Перезапускаем NGINX:
/etc/init.d/nginx restart
И проверяем, что мы обновились успешно: nginx -V

Настройка


После установки необходимо произвести первоначальную настройку конфигурационного файла nginx.conf:
В секцию http { … добавляем следующие директивы:
pagespeed on;
pagespeed FileCachePath "/var/cache/ngx_pagespeed/";
pagespeed EnableFilters combine_css,combine_javascript,rewrite_images,rewrite_css,rewrite_javascript,inline_images,recompress_jpeg,recompress_png,resize_images;
pagespeed JpegRecompressionQuality 85;
pagespeed ImageRecompressionQuality 85;
pagespeed ImageInlineMaxBytes 2048;
pagespeed LowercaseHtmlNames on;

Не забудьте создать каталог /var/cache/ngx_pagespeed/.
После чего снова делаем рестарт:
/etc/init.d/nginx restart

С описаниями фильтров и возможностей можно ознакомиться на официальной странице. При использовании фильтров обратите внимание на раздел "Risks".
В моем случае показатели производительности (согласно плагину для Firefox - pagespeed), увеличились на 25%.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=36119