Introduction
From NGINX version 1.9.11 and upwarts, a new feature is introduced: dynamic modules.
With dynamic modules, you can optionally load separate shared object files at runtime as modules – both third-party modules and some native NGINX modules. (source)
My setup and the problem
I have NGINX installed from the mainline (currently 1.9.14) so it is capable to use dynamic modules. It has also the module I want dynamicly enabled:
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 ...
Note the --with-http_geoip_module=dynamic
which loads the module I need (dynamically).
Unfortunately, the documentation is lacking (some details) and I am unable to set this up.
I have an existing NGINX installation (not from source). But so far as I can understand I just need to build the module, place the generated module file in the right NGINX folder and enable it in the config file.
What I tried so far
I tested this on a different machine (with the same configuration, but not a production machine), but I don't see the ngx_http_geoip_module.so
file.
The commands I used:
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
The questions
- Is it a problem that I try to build the module on a system that has NGINX installed not from source?
- Why is there no .so file generated by my commands?