IP Based Geographic Lookups¶
Packages: GeoIP2 C API & Library libmaxminddb
mod_maxminddb is a module for fast ip/location lookups, available since lighttpd 1.4.54. It uses MaxMind GeoIP2 databases. If the IP was found in the database, the module sets the appropriate environment variables to the request, thus making this information available to other modules/fcgi.
mod_maxminddb consumes MaxMind GeoIP2 databases. This is the successor to GeoIP Legacy databases. GeoIP Legacy databases were discontinued 2 Jan 2019 (https://dev.maxmind.com/geoip/legacy/release-notes/) and mod_geoip is now deprecated.
maxminddb.activate = "enable" (default: "disable")
maxminddb.db = "/path/to/the/GeoIP2/database.mmdb"
maxminddb.env = (...) - list of environment variables to set and associated lookup keys in GeoIP2 .mmdb.
maxminddb.env = (
"GEOIP_COUNTRY_CODE" => "country/iso_code",
"GEOIP_COUNTRY_NAME" => "country/names/en",
"GEOIP_CITY_NAME" => "city/names/en",
"GEOIP_CITY_LATITUDE" => "location/latitude",
"GEOIP_CITY_LONGITUDE" => "location/longitude",
Redirecting based on GeoIP2 data can be performed inside lighttpd using mod_magnet or using backend CGI, FastCGI, SCGI, etc.