Установите Mod_Pagespeed, чтобы ускорить производительность Apache и Nginx до 10 раз
Это наша продолжающаяся серия о оптимизации Apache и настройке производительности, здесь мы представляем новый продукт Google под названием модуль mod_pagespeed для Apache или Nginx, который делает загрузку веб-сайта значительно быстрее, чем когда-либо.
Я лично протестировал этот модуль на нашем живом сервере (linux-console.net), и результаты потрясающие, теперь сайт загружается гораздо быстрее, чем раньше. Я рекомендую всем установить его и посмотреть результаты.
Не пропустите: 5 советов по повышению производительности вашего веб-сервера Apache
В этой статье мы покажем вам, как установить и настроить модуль mod_pagespeed от Google для веб-серверов Apache и Nginx в системах style="color: #cc0000;">RHEL/style="color: #990099;">CentOS/style="color: #3b6eb4;">Fedora и style="color: #507f19;">Debian/style="color: #dd4814;">Ubuntu с использованием официальных бинарных пакетов, чтобы ваша система получала регулярные обновления автоматически и оставалась актуальной.
Что такое Mod_PageSpeed
mod_pagespeed — это модуль с открытым исходным кодом для веб-серверов Apache и Nginx, который автоматически оптимизирует веб-страницы для улучшения производительности при их обслуживании с помощью HTTP-сервера.
Он имеет несколько фильтров, которые автоматически оптимизируют файлы, такие как HTML, CSS, JavaScript, JPEG, PNG и другие ресурсы.
mod_pagespeed разрабатывается на основе библиотек оптимизации PageSpeed, установлен на более чем 100 тысячах сайтов и предоставляется самыми популярными CDN и хостинг-провайдерами, такими как GoDaddy, EdgeCast, DreamHost и несколькими другими.
Он предлагает более 40 оптимизационных фильтров, включая:
- Оптимизация изображений, сжатие и изменение размера
- Конкатенация, минификация и встроение CSS и JavaScript
- Расширение кэша, шардирование доменов и переписывание
- Отложенная загрузка JS и изображений
- и многие другие…
В настоящее время поддерживаемые платформы Linux для модуля mod_pagespeed включают style="color: #cc0000;">RHEL/style="color: #990099;">CentOS/style="color: #3b6eb4;">Fedora и style="color: #507f19;">Debian/style="color: #dd4814;">Ubuntu для 32- и 64-битных дистрибутивов.
Установка модуля Mod_Pagespeed в Linux
Как я обсуждал выше, мы используем официальные бинарные пакеты Google для его установки для будущих обновлений, поэтому давайте продолжим и установим его на ваши системы в зависимости от архитектуры вашей ОС.
На RHEL/CentOS и Fedora
----------- On 32-bit Systems -----------------
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.rpm
# yum install at [# if you don't already have 'at' installed]
# rpm -Uvh mod-pagespeed-stable_current_i386.rpm
----------- On 64-bit Systems -----------------
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm
# yum install at [# if you don't already have 'at' installed]
# rpm -Uvh mod-pagespeed-stable_current_x86_64.rpm
На Debian и Ubuntu
----------- On 32-bit Systems -----------------
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
$ sudo dpkg -i mod-pagespeed-stable_current_i386.deb
$ sudo apt-get -f install
----------- On 64-bit Systems -----------------
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
$ sudo dpkg -i mod-pagespeed-stable_current_amd64.deb
$ sudo apt-get -f install
Установка mod_pagespeed из бинарных пакетов добавит официальный репозиторий Google в вашу систему, чтобы вы могли автоматически обновлять mod_pagespeed с помощью менеджера пакетов под названием yum или apt.
Какой Mode_Pagespeed установлен
Давайте посмотрим, какие пакеты установил mod_pagespeed на системе:
- Он установит два модуля, mod_pagespeed.so для Apache 2.2 и mod_pagespeed_ap24.so для Apache 2.4.
- Будут установлены два основных конфигурационных файла: pagespeed.conf и pagespeed_libraries.conf (для Debian pagespeed.load). Если вы измените один из этих конфигурационных файлов, вы больше не будете автоматически получать будущие обновления.
- Отдельный минимизатор JavaScript pagespeed_js_minify, используемый для минификации JS и создания метаданных для канонизации библиотек.
О конфигурации Mod_Pagespeed и каталогах
Модуль автоматически включает следующие файлы конфигурации и директории во время установки.
- /etc/cron.daily/mod-pagespeed : скрипт cron mod_pagespeed для проверки и установки последних обновлений.
- /etc/httpd/conf.d/pagespeed.conf : Основной конфигурационный файл Apache в дистрибутивах на основе RPM.
- /etc/apache2/mods-enabled/pagespeed.conf : Главный конфигурационный файл Apache2 в дистрибутивах на основе DEB.
- pagespeed_libraries.conf : Набор библиотек по умолчанию для Apache, загружается при запуске Apache.
- /usr/lib{lib64}/httpd/modules/mod_pagespeed.so : модуль mod_pagespeed для Apache.
- /var/cache/mod_pagespeed : Каталог кэширования файлов для веб-сайтов.
style="color: red;">Важно: В Nginx файлы конфигурации mod_pagespeed обычно находятся в каталоге /usr/local/nginx/conf/.
Настройка модуля Mod_Pagespeed
В Apache mod_pagespeed автоматически включается при установке, в то время как в Nginx необходимо добавить следующие строки в ваш файл nginx.conf и в каждый блок сервера, где включен PageSpeed:
pagespeed on;
# Needs to exist and be writable by nginx. Use tmpfs for best performance.
pagespeed FileCachePath /var/ngx_pagespeed_cache;
# Ensure requests for pagespeed optimized resources go to the pagespeed handler
# and no extraneous headers get set.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }
Наконец, не забудьте перезапустить ваш сервер Apache или Nginx, чтобы mod_pagespeed начал работать правильно.
Шаг 4: Проверка модуля Mod_Pagespeed
Чтобы проверить модуль mod_pagespeed, мы будем использовать команду curl для тестирования на домене или IP-адресе, как показано:
# curl -D- http://192.168.0.15/ | less
Апач
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: Apache/2.4.6 (CentOS) PHP/5.4.16
...
X-Mod-Pagespeed: 1.9.32.13-0
---
Nginx
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: nginx/1.4.0
...
X-Page-Speed: 1.5.27.1-2845
...
Если вы не видите заголовок X-Mod-Pagespeed, это означает, что mod_pagespeed фактически не установлен.
Шаг 5: Включение и выключение модуля
Если вы не хотите полностью использовать mod_pagespeed, вы можете выключить его, вставив следующую строку в файл pagespeed.conf вверху.
ModPagespeed offАналогично, чтобы включить модуль, вставьте следующую строку в файл pagespeed.conf вверху.
ModPagespeed onКак я упомянул выше, после установки mod_pagespeed наш веб-сайт загружается на 40%-50% быстрее. Нам очень хотелось бы узнать о скорости вашего веб-сайта после его установки на ваших системах через комментарии.
Для получения дополнительной информации о конфигурации вы можете посетить официальную страницу mod_pagespeed по адресу https://developers.google.com/speed/pagespeed/module/.
