Гид по технологиям

PageSpeed для Apache — ускорение сайта на сервере

5 min read Веб-сервер Обновлено 22 Nov 2025
PageSpeed для Apache — ускорение сайта
PageSpeed для Apache — ускорение сайта

Что такое PageSpeed

PageSpeed — это модуль для веб-сервера Apache, который применяет набор фильтров для оптимизации HTML, CSS, JavaScript и изображений на стороне сервера. Он уменьшает количество запросов, объём передаваемых данных и время отрисовки страницы в браузере.

Ключевой термин: фильтр — автоматическое правило, которое преобразует выход сервера (например, минификация или объединение файлов).

Основные возможности

  • Объединение JavaScript и CSS: уменьшает число файлов и запросов к серверу.
  • Минификация JavaScript и CSS: удаляет переносы строк, лишние пробелы и комментарии.

Минификация примера CSS/JS

Из двух файлов, выполняющих одинаковую работу, минифицированный будет меньше по размеру и загрузится быстрее.

  • Отложенная загрузка JavaScript (deferred loading): скрипты загружаются после основной отрисовки страницы, чтобы посетитель увидел контент быстрее. Важно: это может нарушить работу некоторых скриптов — тестируйте.
  • Оптимизация изображений: responsive изображения, lazyload (ленивая загрузка) и inline preview (низкокачественный предварительный просмотр), что сокращает время загрузки.
  • До 44 фильтров: набор фильтров можно включать и отключать выборочно, чтобы найти баланс между оптимизацией и корректностью работы сайта.

Когда PageSpeed помогает и когда не подходит

Важно понимать сильные и слабые стороны модуля.

  • Подходит, когда: вы используете Apache, хотите снизить TTFB и время загрузки без массовых изменений в коде, у вас есть тестовый сервер для проверки.
  • Не подходит, когда: сайт сильно зависит от точного порядка выполнения JavaScript, вы используете Nginx (без сборки из исходников) или у вас уже настроен CDN с агрессивной оптимизацией и кешированием.

Альтернативные подходы

  • Nginx + ngx_pagespeed — аналог для Nginx (требует сборки или пакета).
  • CDN с функциями оптимизации (Cloudflare, Fastly) — выносит оптимизации на периметр сети.
  • Плагины уровня CMS (например, кеш-плагины для WordPress) — проще в настройке для контентных сайтов.

Установка (Ubuntu / Apache)

Модуль распространяется в виде деб-пакета. Сервер должен работать под Apache; для Nginx требуется сборка модулей из исходников.

Для 32‑битной системы выполните:

wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb

Для 64‑битной системы выполните:

wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb

Скачивание пакета PageSpeed

Затем распакуйте и установите пакет:

sudo dpkg -i mod-pagespeed-*.deb
sudo apt-get -f install

Установка добавит репозиторий Google в систему, поэтому модуль будет получать обновления вместе с системными обновлениями.

Проверка установки (пример):

curl -D- 162.213.36.95 | head

Проверка установки PageSpeed

Конфигурация

Файл конфигурации обычно находится в каталоге /etc/apache2/mods-available/ и называется pagespeed.conf. При установке модуль включается автоматически; также включается mod_deflate для gzip-сжатия.

Файл конфигурации PageSpeed

Открыть конфигурацию можно любимым редактором:

sudo nano /etc/apache2/mods-available/pagespeed.conf

По умолчанию в файле стоит:

ModPagespeed on

Чтобы временно отключить модуль, измените на:

ModPagespeed off

Папка с сгенерированными ресурсами по умолчанию называется pagespeed_static. Чтобы задать свою директорию, добавьте:

ModPagespeedStaticAssetPrefix /custom/static/directory

Пример включения нескольких фильтров (вставьте в конфигурацию):

ModPagespeedEnableFilters combine_css,combine_javascript,minify_css,minify_javascript,inline_preview_images

Не включайте сразу все фильтры — включайте по одному и тестируйте.

Веб‑интерфейс и доступ к статистике

Модуль предоставляет веб‑интерфейс для просмотра статистики и сгенерированных ресурсов. По умолчанию доступ ограничен localhost. Чтобы открыть доступ с внешнего IP, отредактируйте соответствующие директивы доступа в pagespeed.conf.

Добавьте строку типа:

Allow from 192.xx.xx.xx

Замените 192.xx.xx.xx на ваш публичный IP. После изменения перезапустите Apache:

sudo systemctl restart apache2

После этого перейдите по адресу вида http://<ваш‑ip>:<порт>/pagespeed_admin или по пути, указанному в конфигурации.

Веб-интерфейс PageSpeed

Статистика PageSpeed

Методика безопасного тестирования и внедрения

Шаги для безопасного внедрения:

  1. Установите модуль на тестовый сервер, идентичный продакшену.
  2. Включайте фильтры по одному и тестируйте функциональность сайта (взаимодействие, формы, карты, аналитика).
  3. Сравнивайте метрики до и после: Lighthouse, WebPageTest, RUM‑данные.
  4. Проверяйте логи сервера на ошибки и предупреждения.
  5. При успехе перенесите конфигурацию на продакшен вне пикового трафика.

Критерии приёмки:

  • Визуальная корректность страниц и основных пользовательских сценариев.
  • Отсутствие JS‑ошибок в консоли, связанных с порядком загрузки скриптов.
  • Улучшение ключевых метрик загрузки (например, First Contentful Paint) или хотя бы отсутствие регрессий.

Чеклист ролей (быстрый)

Администратор:

  • Установить пакет и проверить наличие репозитория.
  • Настроить доступ к pagespeed_admin и права.
  • Резервная копия конфигурации перед изменениями.

Разработчик:

  • Протестировать сценарии JS после включения фильтров.
  • Проверить оптимизацию изображений и корректность responsive‑картинок.

Владелец контента / PO:

  • Подтвердить визуальное качество изображений и важные интерактивные элементы.
  • Одобрить перенос в продакшен.

Отладка и типичные проблемы

  • Проблема: сломанные скрипты после включения deferred загрузки. Решение: отключите фильтр deferred, включайте по одному, используйте тестовую среду.

  • Проблема: медленная генерация кеша при первом обращении. Решение: заранее прогрейте кеш на тестовом сервере, настройте достаточный диск и права на директорию pagespeed_static.

  • Проблема: конфликт с другими кеш‑решениями или CDN. Решение: протестируйте порядок обработки запросов; иногда нужно отключать схожие оптимизации у CDN или на уровне приложения.

Безопасность и приватность

Модуль сам по себе не собирает персональные данные, он трансформирует статический контент. Проверьте, что доступ к админ‑интерфейсу ограничен — не оставляйте его открытым в публичном интернете без авторизации.

Совместимость и миграция

  • Для Nginx используйте ngx_pagespeed или собирайте модуль из исходников.
  • Если вы используете современные сборщики и бандлеры (Webpack, Parcel), часть оптимизаций лучше делать на этапе сборки, а не на сервере.

Сводка и рекомендации

PageSpeed для Apache — удобный инструмент для автоматической оптимизации ресурсоёмких сайтов. Он экономит время и уменьшает трафик, но может влиять на поведение JavaScript. Всегда тестируйте изменения на стенде и включайте фильтры поэтапно.

Важно: начните с базовых фильтров (минификация и объединение) и только потом тестируйте более агрессивные опции (deferred, inline preview).

Полезные примеры конфигурации

Простой набор фильтров для старта:

ModPagespeed on
ModPagespeedFileCachePath /var/cache/pagespeed
ModPagespeedEnableFilters combine_css,combine_javascript,minify_css,minify_javascript,remove_comments
ModPagespeedImageRecompressionQuality 85

Если нужно временно отключить все оптимизации для отладки:

ModPagespeed off

Быстрый план действий (Roadmap)

  • Установка на тестовый сервер.
  • Включение базовых фильтров и тестирование.
  • Мониторинг и устранение ошибок.
  • Перенос на продакшен в окне обслуживания.

Завершение: PageSpeed — полезный инструмент в арсенале администратора и разработчика. Он не обязателен, но при аккуратной настройке позволяет без изменений в коде снизить время загрузки и нагрузку на сеть.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

RDP: полный гид по настройке и безопасности
Инфраструктура

RDP: полный гид по настройке и безопасности

Android как клавиатура и трекпад для Windows
Гайды

Android как клавиатура и трекпад для Windows

Советы и приёмы для работы с PDF
Документы

Советы и приёмы для работы с PDF

Calibration в Lightroom Classic: как и когда использовать
Фото

Calibration в Lightroom Classic: как и когда использовать

Отключить Siri Suggestions на iPhone
iOS

Отключить Siri Suggestions на iPhone

Рисование таблиц в Microsoft Word — руководство
Office

Рисование таблиц в Microsoft Word — руководство