Введение
Из версии NGNX 1.9.11 и upwarts вводится новая функция: динамические модули.
С динамическими модулями вы можете дополнительно загружать отдельные файлы общих объектов во время выполнения в виде модулей - как сторонних модулей, так и некоторых собственных модулей NGINX. (источник)
Моя настройка и проблема
У меня есть NGINX, установленный с основной линии (в настоящее время 1.9.14), поэтому он способен использовать динамические модули. У него есть модуль, который я хочу динамически включить:
nginx -V
nginx version: nginx/1.9.14
built by gcc 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.1)
built with OpenSSL 1.0.1f 6 Jan 2014
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules ... --with-http_geoip_module=dynamic ...
Обратите внимание на --with-http_geoip_module=dynamic
, который загружает необходимый мне модуль (динамически).
К сожалению, документации не хватает (некоторые детали), и я не могу установить это.
У меня есть существующая установка NGINX (не из источника). Но насколько я понимаю, мне просто нужно создать модуль, поместить сгенерированный файл модуля в нужную папку NGINX и включить его в файле конфигурации.
То, что я пробовал до сих пор
Я тестировал это на другой машине (с той же конфигурацией, но не с производственной машиной), но я не вижу файл ngx_http_geoip_module.so
.
Команды, которые я использовал:
wget http://nginx.org/download/nginx-1.9.14.tar.gz
tar -xzf nginx-1.9.14.tar.gz
cd nginx-1.9.14/
./configure --with-http_geoip_module=dynamic
Вопросы
- Проблема в том, что я пытаюсь создать модуль в системе, которая NGINX установил не из источника?
- Почему нет файлов .so, сгенерированных моими командами?