В последнее время я очень часто пишу статьи, ха-ха. После развертывания функционального модуля brotli в панели Pagoda я иногда видел, как кто-то упоминал модуль PageSpeed, и я не знал почему, поэтому я зашел в Baidu и узнал, что Pagespeed — это сеть. инструмент производительности страниц, предоставляемый Google. В основном используется для тестирования и оптимизации производительности веб-страниц на ПК и мобильных терминалах. С помощью Pagespeed пользователи могут выявлять и устранять проблемы с производительностью, такие как медленная загрузка веб-страниц и длительное время отклика, тем самым улучшая взаимодействие с пользователем и общую производительность веб-сайта. Как только я увидел, что это может улучшить производительность сайта, он меня сразу привлек. И только после завершения установки я понял, что действительно не всем рекомендую его устанавливать. А почему, вы узнаете. знайте в конце статьи.
Независимо от того, что это за статья, она все равно записывается. При необходимости следуйте следующему руководству, чтобы начать путь метания.
Версия сервера: CentOS Linux версии 7.9.2009 (Core)
Версия ядра: Linux localhost.localdomain 3.10.0-1160.49.1.el7.x86_64
Версия GCC: gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) (проверьте с помощью команды gcc -v, поскольку компиляция модуля Pagespeed требует версии GCC)
Панель Пагода: 9.1.0
Пример версии Nginx: Nginx 1.22.
Необходимый установочный пакет: incubator-pagespeed-ngx-1.13.35.2-stable (wget https://github.com/apache/incuba... .35.2-stable.tar.gz)
Автоматически устанавливайте компилятор GCC (включая C и C++), систему сборки CMake, инструмент распаковки архива, инструмент загрузки wget, библиотеки разработки PCRE и zlib через менеджер пакетов YUM, не требуя от пользователей ручного подтверждения установки каждого пакета программного обеспечения. Эти пакеты обычно представляют собой зависимости, необходимые при компиляции и установке другого программного обеспечения. Команды следующие:
yum install gcc cmake unzip wget gcc-c++ pcre-devel zlib-devel -y
После ввода команды система автоматически ее установит. Однако некоторые изображения могут иметь ошибки и система автоматически сопоставит их, как показано на рисунке:
После завершения установки откройте «Установить скорость страницы».
Создайте новый каталог [ngx_page] в терминале, войдите в каталог и загрузите файл. Команда выглядит следующим образом:
mkdir -p /www/server/ngx_page/
cd /www/server/ngx_page/
wget https://github.com/apache/incubator-pagespeed-ngx/archive/v1.13.35.2-stable.tar.gz
После ввода, как показано на картинке, это в принципе не сложно. Если доступ к github ограничен, скачайте его локально и загрузите в каталог сервиса.
Разархивируйте файл и войдите в каталог [incubator-pagespeed-ngx-1.13.35.2-stable]. Команда выглядит следующим образом:
tar -xvzf v1.13.35.2-stable.tar.gz
cd incubator-pagespeed-ngx-1.13.35.2-stable
Как показано на картинке, после загрузки войдите в каталог и разархивируйте файл.
После входа в каталог загрузите файл и распакуйте его. Команда выглядит следующим образом:
wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-x64.tar.gz
tar -xvzf 1.13.35.2-x64.tar.gz
Просмотр файлов в каталоге
ls -lh
Как показано на картинке, посмотрите, есть ли вот этот [psol] файл, как показано на картинке:
Войдите в каталог nginx панели Pagoda и создайте резервную копию файла nginx Pagoda.
cd /www/server/nginx/sbin/
cp nginx nginx.bak
После завершения резервного копирования мы выполним следующие шаги, чтобы установить его. Магазин программного обеспечения в правой части панели пагоды,Перейти к удалению панели Pagoda,После завершения удаления нажмите [Установить],Скомпилируйте и установите,Выберите версию [1.22],Затем добавьте пользовательский модуль,Команда выглядит следующим образом:
ng_pagespeed
--add-module=/www/server/ngx_page/incubator-pagespeed-ngx-1.13.35.2-stable
Убедитесь, что расположение каталога параметров модуля правильное (путь к изображению будет изменен позже), а имя и описание можно задать произвольно.
Выбираем версию [1.22.1] и после настройки сразу открываем пользовательский модуль, а включенное состояние такое, как показано на рисунке.
Я установил два модуля,один【brotli】модуль сжатияи【pagespeed】Модуль ускорения,После подтверждения отсутствия проблем,Нажмите [Отправить и установить],Дождитесь завершения установки,Не долго, но и не медленно,Зависит от скорости и пропускной способности сервера,пока установка не завершится успешно,Затем Конфигурационный файл。
Объясните здесь,Не то же самое, что бротли,Конфигурацию скорости страницы необходимо установить на веб-сайте.,,найти сайт,Веб-сайты, которые хотят использовать функцию PageSpeed,настраивать,Конфигурационный файл, копировать выглядит следующим образом:
# Основные настройки
pagespeed on;
pagespeed FileCachePath /var/ngx_pagespeed_cache;
# Включите необходимые фильтры оптимизации
pagespeed EnableFilters collapse_whitespace;
pagespeed EnableFilters canonicalize_javascript_libraries;
pagespeed EnableFilters combine_css;
pagespeed EnableFilters combine_javascript;
pagespeed EnableFilters elide_attributes;
pagespeed EnableFilters extend_cache;
pagespeed EnableFilters flatten_css_imports;
pagespeed CssFlattenMaxBytes 5120;
pagespeed EnableFilters lazyload_images;
pagespeed EnableFilters rewrite_javascript;
pagespeed EnableFilters insert_dns_prefetch;
pagespeed EnableFilters prioritize_critical_css;
# Отключить оптимизацию для определенных каталогов (необязательно)
pagespeed Disallow "*/zb_system/*";
# Конфигурация обработки изображений
pagespeed EnableFilters lazyload_images;
pagespeed EnableFilters rewrite_images;
pagespeed EnableFilters recompress_images;
pagespeed EnableFilters convert_jpeg_to_webp;
# Включите этот фильтр, если вам нужно обрабатывать анимированные GIF-файлы.
# pagespeed EnableFilters convert_to_webp_animated;
# Примечание: Convert_to_webp_lossless и convert_to_webp_animated может быть связано с convert_jpeg_to_webp конфликт,Потому что они используются в разных форматах изображений.и Цель
# Оптимизация мобильных изображений
pagespeed EnableFilters resize_mobile_images;
pagespeed EnableFilters responsive_images;
pagespeed EnableFilters resize_images;
pagespeed EnableFilters insert_image_dimensions;
pagespeed EnableFilters resize_rendered_image_dimensions;
pagespeed EnableFilters strip_image_meta_data;
# Оптимизация преобразования формата изображения (включено дополнительно)
# pagespeed EnableFilters convert_png_to_jpeg; # ПРИМЕЧАНИЕ. Это может привести к потере качества изображения.
# pagespeed EnableFilters convert_to_webp_lossless; # Для статических изображений,Такие как PNGиGIF,Рассмотрите возможность использования сжатия без потерь
# Разрешить оптимизацию ресурсов, на которые есть ссылки в JS.
pagespeed InPlaceResourceOptimization on;
pagespeed EnableFilters in_place_optimize_for_browser;
# Настройте специальные блоки местоположения для обработки ресурсов PageSpeed.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
add_header Cache-Control "public, max-age=31536000";
# Другие настройки заголовка могут быть добавлены по мере необходимости.
}
location ~ "^/ngx_pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon" { }
Как показано на рисунке, после завершения настройки [/var/ngx_pagespeed_cache] гарантирует существование этого каталога. Если путь назначения отсутствует, вы можете создать или настроить другие кэши самостоятельно.
После завершения установки перезагрузите или перезапустите сервер nginx.
Существует множество способов использования проверки, например:
nginx -V
Как показано на рисунке, мы можем увидеть информацию о модуле PageSpeed или напрямую получить доступ к странице:
curl -I -p https://www.itlaoli.com
Измените свое доменное имя для доступа, как показано на рисунке [X-Page-Speed: 1.13.35.2-0], к соответствующей информации, что означает, что соответствующие функции были успешно развернуты и включены.
Во время установкии Во время развертывания возникло несколько проблем.,Не знаю почему при переустановке установка не удалась Скомпилируйте и установите,Когда я тестировал его, я использовал версию 1.24, и она сообщила, что установка не удалась.,Файл не существует: /www/server/nginx/sbin/nginx,Я думал, что версия не очень хорошая,В результате вторая установка 1.22 снова провалилась.,Нет, почему,затем переустанови,Ренастройка пройдет успешно,Я не понимаю, что пошло не так,Поэтому я поменял оригинальную версию 1.24 на 1.22.
Самый важный момент - после включения PageSpeed скорость сайта действительно качественно улучшается. Эффект очевиден, но нет такого хорошего в нагрузке. статус и загрузка ЦП были заполнены в одно мгновение. Согласно поговорке в Интернете, это напоминание о том, что функция ЦП мобилизована в соответствии со скоростью веб-сайта. Я перешел в фоновый режим, чтобы посмотреть, и, конечно же, загрузку. был заполнен, как показано на картинке:
ЦП в основном 80%+, но при съемке скриншотов падал до 44,2%, поэтому устанавливать его не рекомендуется Ведь конфигурация такая для 2-х ядерных и 4G конфигураций даже не думайте. основные и низкопрофильные их скорее всего заблокируют, так что качать бесполезно, зря, но несмотря ни на что, я все-таки кое-чему научился. Что касается новой поддержки, я прочитал на форуме Pagoda, что модуль pagespeed был интегрирован после версии 1.7, но его удалили, когда я об этом узнал. Но удалять его можно, ведь он занимает слишком много ресурсов. Это все равно не рекомендуется. использовать его, если конфигурация сервера не идеальна. Возможно, это будет контрпродуктивно. Если у вас есть вопросы, оставьте сообщение.