Вернуться в блог

Установка динамических модулей Nginx

Установка динамических модулей Nginx

ДАННЫЙ ПРИМЕР МЫ БУДЕМ ДЕЛАТЬ НА NGINX МОДУЛЕ NCHAN


Для начала, нам нужно узнать какая версия nginx у нас установлена на сервере а для этого, нам нужно выполнить следующую команду:
nginx -v
Результат:
root@server ~ # nginx version: nginx/1.24.0 (Ubuntu)
теперь скачиваем эту версию nginx из официального сайта: 
wget https://nginx.org/download/nginx-1.24.0.tar.gz
распаковываем скачанный архив c nginx:
tar -xvzf nginx-1.24.0.tar.gz
далее скачиваем актуальную версию Nchan из репозитория:
wget https://github.com/slact/nchan/archive/v1.3.6.tar.gz
распаковываем скачанный архив с nchan:
tar -xvzf v1.3.6.tar.gz
 

Все необходимое для сборки мы уже подготовили, теперь можно перейти к конфигурации и сборки Nginx

Следующее что нам понадобится сделать это получить конфигурацию nginx установленного на нашем сервере и скопировать ее в текстовый файл, она нам скоро понадобится, что бы получить конфигурацию выполняем команду:
nginx -V
 Результатом выполнения будет что то типо:
nginx version: nginx/1.24.0 (Ubuntu)
built with OpenSSL 1.1.1f  31 Mar 2020
TLS SNI support enabled
configure arguments: --with-cc-opt='-g -O2 -fdebug-prefix-map=/build/nginx-5J5hor/nginx-1.24.0=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fPIC' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-compat --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_xslt_module=dynamic --with-stream=dynamic --with-stream_ssl_module --with-mail=dynamic --with-mail_ssl_module
 Копируем все начиная с:
--prefix=
в текстовый файл и в конце строки добавляем:
--add-dynamic-module=/root/nchan-1.3.6
 Должно получиться вот так:
--prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-compat --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_xslt_module=dynamic --with-stream=dynamic --with-stream_ssl_module --with-mail=dynamic --with-mail_ssl_module --add-dynamic-module=/root/nchan-1.3.6
 в начало строки добавляем:
./configure
 Должно получиться так:
./configure --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-compat --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_xslt_module=dynamic --with-stream=dynamic --with-stream_ssl_module --with-mail=dynamic --with-mail_ssl_module --add-dynamic-module=/root/nchan-1.3.6
 Устанавливаем необходимые зависимости:
apt-get -y install build-essential libpcre3 libpcre3-dev openssl libssl-dev libxml2-dev libxslt-dev libgd-dev libgeoip-dev libperl-dev
Далее переходим в папку с скачанным nginx:
cd nginx-1.24.0
Вставляем сконфигурированную нами строку ./configure --prefix=/us... и нажимаем Enter.
Начинаем сборку:
make modules
 и:
make install
Перезапускаем Nginx:
/etc/init.d/nginx restart
 Проверяем:
nginx -V
 Если в конце вы видите строку с модулем значит все установлено правильно.
07.09.2020 01:46 2311
  • facebook
  • share
  • close

    Комментарии (5)

    Олег Барташевич
    ⭐⭐⭐⭐⭐ ответить
    Дмитрий Олейник
    Самая понятная документация из всех что встречал, спасибо большое автору и +1 ссылка мне в заметки браузера ответить
    Алексей Киткаев
    Единственный минус Nginx как по мне так это то что при каждом изменении настроек его нужно перезапускать. ответить
    Владислав Литвинко
    ТОПчик! 😁😁😁 ответить
    Влад Кучеренко
    Thanks bro you helped me a lot 😎 ответить
    phone_enabled Заказать звонок