Установите Nginx с Ngx_pagespeed на CentOS 7

Вступление

Ngx-pagespeed - это модуль Nginx с открытым исходным кодом, который ускоряет ваш сайт и сокращает время загрузки страницы. Это достигается путем переписывания веб-страниц для уменьшения задержки и пропускной способности. Ngx-pagespeed также предоставляет множество фильтров оптимизации, которые используются для оптимизации различных файлов, таких как CSS, HTML, PNG и JPG.

Предпосылки

Шаг 1: Обновите систему

Перед установкой любых пакетов на вашем экземпляре сервера CentOS рекомендуется обновить систему. Войдите в систему, используя пользователя sudo, и выполните следующие команды для обновления системы.

sudo yum -y update  
sudo reboot

После перезагрузки системы снова войдите в систему как пользователь sudo и перейдите к следующим шагам.

Шаг 2: Загрузите зависимости

Чтобы установить Nginx с ngx-pagespeed, мы должны скомпилировать Nginx из исходного кода. Для этого нам нужно скачать программное обеспечение, выполнив следующую команду.

sudo yum -y install gcc-c++ pcre-devel zlib-devel make unzip

Далее нам нужно скачать исходный код для Nginx и ngx-pagespeed. На момент написания последней стабильной версией является Nginx 1.12.0, а последней версией ngx-pagespeed является 1.12.34.2.

NPS_VERSION=1.12.34.2
NGINX_VERSION=1.12.0
wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz
wget https://github.com/pagespeed/ngx_pagespeed/archive/v${NPS_VERSION}-beta.zip

Распакуйте загруженные пакеты.

tar -xvzf nginx-${NGINX_VERSION}.tar.gz
unzip v${NPS_VERSION}-beta.zip

Шаг 3. Загрузите библиотеки оптимизации страницы.

Библиотеки PageSpeed ​​Optimization (psol) необходимы для компиляции Nginx. Загрузите и извлеките их в исходный каталог ngx-pagespeed с помощью следующих команд.

cd ngx_pagespeed-${NPS_VERSION}-beta
psol_url=https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz
[ -e scripts/format_binary_url.sh ] && psol_url=$(scripts/format_binary_url.sh PSOL_BINARY_URL)
wget ${psol_url}
tar -xzvf $(basename ${psol_url})
cd ..

Шаг 4: Настройте и скомпилируйте Nginx

Исходный код Nginx теперь можно скомпилировать с помощью модуля pagespeed. Перейдите в исходный каталог Nginx.

cd nginx-${NGINX_VERSION}

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

./configure --add-module=$HOME/ngx_pagespeed-${NPS_VERSION}-beta --user=nobody --group=nobody --pid-path=/var/run/nginx.pid ${PS_NGX_EXTRA_FLAGS}

После завершения настройки скомпилируйте Nginx с помощью команды:

sudo make

Это может занять несколько минут. После этого вы можете установить программное обеспечение с помощью команды:

sudo make install

Nginx теперь установлен в каталоге /usr/local/nginx. Для удобства мы можем создать следующие символические ссылки:

sudo ln -s /usr/local/nginx/conf/ /etc/nginx
sudo ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx

Шаг 5: Создать скрипт запуска

Чтобы иметь возможность остановить и запустить Nginx, вам нужно вручную создать скрипт запуска. Шаблон для этого предоставлен Nginx здесь . Скопируйте содержимое шаблона и вставьте его в /etc/init.d/nginxфайл с помощью текстового редактора, например nano. Также установите правильные разрешения для файла.

sudo nano /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx

Теперь вы можете запустить, а затем добавить его к уровням запуска по умолчанию (чтобы Nginx запускался и останавливался вместе с вашим экземпляром) с помощью команды:

sudo service nginx start
sudo systemctl enable nginx

Шаг 6: Включить ngx_pagespeed

Чтобы включить ngx-pagespeed, начните с создания каталога кэша и присвоения ему права собственности на Nginx:

sudo mkdir -p /var/ngx_pagespeed_cache
sudo chown -R nobody:nobody /var/ngx_pagespeed_cache

Откройте /etc/nginx/nginx.confфайл:

sudo nano /etc/nginx/nginx.conf

И добавьте следующие строки в блоке сервера:

##
# Pagespeed main settings

pagespeed on;
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 ~ "^/ngx_pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon" { }

Наконец, перезапустите Nginx, чтобы изменения вступили в силу:

sudo systemctl restart nginx

Шаг 6: Тест

Чтобы проверить, правильно ли был установлен ngx-pagespeed на вашем сервере, выполните следующую команду:

curl -I -p http://localhost| grep X-Page-Speed

Выход должен выглядеть так:

X-Page-Speed: 1.12.34.2-0

Ngx-pagespeed теперь установлен на вашем сервере. Если вы не получаете этого выхода, убедитесь, что вы включили ngx-pagespeed, как описано выше.

Оставить комментарий

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

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

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

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

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше