====== Geo IP ====== .. note:: This documentation only applies to On-premise databases. Installation ============ #. Download both the GeoLite2 City and Country `databases `_. You should end up with two files called :file:`GeoLite2-City.mmdb` and :file:`GeoLite2-Country.mmdb`. #. Move the files to the folder :file:`/usr/share/GeoIP/`. .. code-block:: bash mv ~/Downloads/GeoLite2-City.mmdb /usr/share/GeoIP/ mv ~/Downloads/GeoLite2-Country.mmdb /usr/share/GeoIP/ #. Restart the server .. note:: If you don't want to locate the geoip database in :file:`/usr/share/GeoIP/`, use the :option:`--geoip-city-db ` and :option:`--geoip-country-db ` options of the Odoo command line interface. These options take the absolute path to the GeoIP database file and use it as the GeoIP database. For example: .. code-block:: bash ./odoo-bin --geoip-city-db= ~/Downloads/GeoLite2-City.mmdb .. seealso:: - :doc:`CLI documentation `. Test GeoIP geolocation in your Odoo website =========================================== Edit a web page to include some geo-ip information such as the country name of the current request IP address. To do so: #. Go to your website. Open the web page that you want to test ``GeoIP``. #. Choose :menuselection:`Customize --> HTML/CSS/JS Editor`. #. Add the following piece of XML in the page : .. code-block:: xml

#. Save and refresh the page. Geo-ip is working if you read your country name displayed in bold in the middle of the page. In case you read "**geoip failure**" instead then the geolocalization failed. The common causes are: #. The browsing IP address is the localhost (``127.0.0.1``) or a local area network one. If you don't know, you can access your website using mobile data. #. You are using a reverse-proxy (apache, nginx) in front of Odoo but didn't start Odoo with the proxy-mode enabled. See :option:`proxy mode `. #. The GeoIP database is corrupt, missing or unaccessible. In such case a warning was logged in the server logs.