Как обновить / пересобрать Nginx в BitrixVM со всеми модулями за 10 шагов

Как обновить / пересобрать Nginx в BitrixVM со всеми модулями за 10 шагов

Александр Гусев Обновлено: 19 июня 2023 5840 просмотров

Важно!
Выполняя действия ниже, отдавайте себе отчет в том что вы делаете.

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

Для начала, убеждаемся, что стоит git, если нет, установим

yum install git -y

Нам надо пересобрать nginx с такими же параметрами, как и в BitrixVM 1. создаем папку nginx-build и переходим в неё

mkdir ~/nginx_build && cd ~/nginx_build
2. качаем исходники Nginx и распаковываем
wget https://nginx.org/download/nginx-1.19.0.tar.gz && tar zxf nginx-1.19.0.tar.gz && cd nginx-1.19.0
3. ставим исходники OpenSSL
yum install openssl-devel -y
4. качаем nginx-push-stream-module
cd ~/nginx_build && git clone http://github.com/wandenberg/nginx-push-stream-module.git && NGINX_PUSH_STREAM_MODULE_PATH=$PWD/nginx-push-stream-module
5. ставим zlib
cd ~/nginx_build/ && wget http://zlib.net/zlib-1.2.11.tar.gz && tar -zxf zlib-1.2.11.tar.gz && cd zlib-1.2.11 && ./configure && make && sudo make install
6. ставим headers-more-nginx-module
cd ~/nginx_build && git clone http://github.com/openresty/headers-more-nginx-module
7. ставим mod_zip
cd ~/nginx_build && git clone https://github.com/evanmiller/mod_zip
8. качаем brotli
cd ~/nginx_build && git clone https://github.com/google/ngx_brotli && cd ngx_brotli && git submodule update --init
9. ставим pcre-dev
 yum install pcre-devel -y
Собираем и устанавливаем nginx
cd ~/nginx_build/nginx-1.19.0 && ./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-openssl-opt=enable-tls1_3 --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-http_auth_request_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-file-aio --add-module=../nginx-push-stream-module --add-module=../mod_zip --add-module=../headers-more-nginx-module --add-module=../ngx_brotli --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' && make && make install
Ждём... Ещё ждём... Ждём... проверяем версию nginx и валидность конфигов
nginx -t && nginv -v
Версия должна смениться на 1.19 и текст
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Если всё ок, то перезапускаем nginx
service nginx restart
Удаляем папку с хламом
rm -r ~/nginx_build/

Всё, вы молодец.

upd: статья обновлена, убрана ошибка в сборке и версия nginx изменена на 1.19, вы можете подставлять последнюю версию по мере её появления.



Комментарии


Авторизуйтесь через соц.сеть и оставьте комментарий

Возврат к списку