GeoIP

Note:
MaxMind GeoLite Legacy databases are currently discontinued, MaxMind GeoIP2 or Geolite2 databases and F5 NGINX Plus GeoIP2 module should be used instead.

Installation

  1. Check the Technical Specifications page to verify that the module is supported by your operating system.

  2. Install the GeoIP module package nginx-plus-module-geoip.

    For Amazon Linux 2, CentOS, Oracle Linux, and RHEL:

    sudo yum update && \
    sudo yum install nginx-plus-module-geoip
    Note:
    Only 7.x version of CentOS, Oracle Linux, and RHEL is supported.

    For Debian and Ubuntu:

    sudo apt update && \
    sudo apt install nginx-plus-module-geoip

    For SLES:

    sudo zypper refresh && \
    sudo zypper install nginx-plus-module-geoip

    For Alpine:

    apk add nginx-plus-module-geoip

Configuration

After installation you will need to enable and configure the module in NGINX Plus configuration file nginx.conf.

  1. Enable dynamic loading of GeoIP modules with the load_module directives specified in the top-level (“main”) context:

    load_module modules/ngx_http_geoip_module.so;
    load_module modules/ngx_stream_geoip_module.so;
    
    http {
        # ...
    }
  2. Perform additional configuration as required by the module (HTTP or TCP/UDP).

  3. Test the NGINX Plus configuration. In a terminal, type-in the command:

    nginx -t

    Expected output of the command:

    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf is successful
  4. Reload the NGINX Plus configuration to enable the module:

    nginx -s reload

More Info