Sitecore has release Geolocaiton service on May 2015. The included support for MaxMind was disconnected in June of that year. With Geo service is been part of Sitecore offerings now, it will be possible for Sitecore to enhance and expand its functionality in a future releases. The native integration of Geo services would make installation easier and support more streamlined. Nevertheless, MaxMind API integration could still be very useful in some cases. I expect this service to be used by someone who wants to create functional development environment or by someone who is invested in MaxMind infrastructure and would like to use consistent Geo services across different applications.
The cost comparison of the services shows that MaxMind service is slightly cheaper, but native integration of Sitecore Geolocaiton service and provided support makes it much better choice for most.
MaxMind | Sitecore Geolocation | |
Cost | 2,5 MIL average searches for: $1000(0.0004 per search) | 2.5 MIL average query searches for: $1,320(0.000528per search) |
Cost Calculation | All query requests are counted against quota.
|
Unique IP request by Customer to Service within Payment Cycle Period are counted against quota |
This module will work with GeoIP2 City Database API, but provided code could be used as a base to create custom Geo Provider.
Package Installation
1. Request Free Trial from MaxMind
2. Backup website folder
3. Install Package (Tested on Sitecore 8.1).
MaxMind GeoIP2 CustomLookupProvider-0.9.2
4. Update Web.config. Update Newtonsoft.Json section.
Reason for this update: The MaxMind DLL requires Newtonsoft.Json version 8
<dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" /> <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="8.0.0.0" /> </dependentAssembly>
5. Update App_Config/Include/z.MaxMind.GeoIP2.config file as following:
User ID and License key – pulled from MaxMind WebSite
<setting name="MaxMindGeoIP2.ID" value="0" /> <setting name="MaxMindGeoIP2.Key" value="xxxxxx" />
Set DEBUG mode – this will output MaxMind City response object into log file. Logs stored under Data/Logs/MaxMindGeoIP2.20160423.125949.txt
<setting name="MaxMindGeoIP2.isDebug" value="False" />
6. Upload TestIp.aspx file to website/sitevore/ folder to test the set-up
7. Test:http://[host name]/sitecore/TestIp.aspx
Manual Installation
1. Request Free Trial from MaxMind: https://www.maxmind.com/en/geoip2-precision-city-service
2. Get latest code from: https://bitbucket.org/imstek/maxmind-geoip2/src
3.Update App_Config/Include/z.MaxMind.GeoIP2.config (check above instructions)
4. Update Sitecore.path.xml file, located in the root of the project with PATH to the collection of Sitecore DLLs – If you develop locally, that will be your website/bin folder.
5. Create Publishing profile to deploy the code.
6. The TestIP.aspx file will be deployed automatically, removed it from PROD
7. Test:http://[host name]/sitecore/TestIp.aspx
Also available on Sitecore Marketplace
Do you provide Sitescore Geolocation API using IP2Location?
The code is for GeoIP2 Precision: City, but it can be modified to work with ANY geo ip provider.