Назад | Перейти на главную страницу

Установка дополнительных модулей Nginx с помощью apt-get

В настоящее время у меня установлен Nginx с помощью инструкций на сайте Nginx:

nginx=stable
sudo su -
add-apt-repository ppa:nginx/$nginx
apt-get update 
apt-get install

Я настроил Nginx, и какое-то время он отлично работает. Теперь я хочу добавить несколько пользовательских модулей - скажем, Модуль выполнения загрузки. В инструкциях к этому модулю сказано добавить --add-module=path/to/nginx_uploadprogress_module на ваш ./configure команда. Однако я не устанавливал Nginx из исходников.

Как лучше всего справиться с этой ситуацией? Можно ли указать APT для компиляции из источника и передать параметры в ./configure? Могу ли я скомпилировать существующую установку? А как насчет путей - как мне сделать так, чтобы они совпадали? Или мне нужно удалить версию, управляемую APT, и начать заново?

Установите dpkg-dev:

sudo apt-get install dpkg-dev

Добавить репозиторий:

sudo add-apt-repository ppa:nginx/stable

редактировать /etc/apt/sources.list.d/nginx-stable-lucid.list, добавьте dpkg-src:

deb http://ppa.launchpad.net/nginx/stable/ubuntu lucid main
deb-src http://ppa.launchpad.net/nginx/stable/ubuntu lucid main

примечание: (предыдущий шаг, возможно, уже был автоматически выполнен в Ubuntu> = 12.04 - также убедитесь, что вы изменили lucid чтобы отразить вашу версию)

Повторно синхронизируйте файлы индекса пакета:

sudo apt-get update

Получите источники:

apt-get source nginx

Зависимости сборки:

sudo apt-get build-dep nginx

Отредактируйте nginx-0.8.54 / debian / rules:

config.status.full: config.env.full config.sub config.guess
...
--add-module=path/to/nginx_uploadprogress_module

Пакет сборки:

cd nginx-0.8.54 && dpkg-buildpackage -b

Установить пакеты:

sudo dpkg --install nginx-common_1.2.4-2ubuntu0ppa1~precise_all.deb

sudo dpkg --install nginx-full_1.2.4-2ubuntu0ppa1~precise_amd64.deb

С момента сжатия в Debian и так как онерический в Ubuntu есть некоторые (лайк headers-more-module Мне нужно) в

apt-get install nginx-extras

Установка Nginx из исходного кода необходима, если вы хотите добавить к нему дополнительный / (сторонний модуль). При установке через исходный код Nginx не может использоваться в качестве службы, а logrotate не настраивается для Nginx. Следить за этим метод чтобы установить его со всеми функциями, которые вы получаете при установке через apt-get

Сладкая статья, которую можно прочитать Вот объяснит подробную информацию о компиляции модулей в nginx. Обычно вам нужно перекомпилировать nginx каждый раз, когда вы хотите установить модуль.

Также похоже на это метод тоже будет работать.

 wget 'http://nginx.org/download/nginx-1.9.3.tar.gz'
 tar -xzvf nginx-1.9.3.tar.gz
 cd nginx-1.9.3/

 # Here we assume you would install you nginx under /opt/nginx/.
 ./configure --prefix=/opt/nginx \
     --add-module=/path/to/headers-more-nginx-module
 make
 make install