Самая легкая технология IP-геолокации для статического сайта?

Я управляю сайтом за обратным прокси-сервером Squid, который доставляет большую часть кэшируемого контента (включая html, не только изображения и т. Д.). Мне нужно показать другой контент для наших пользователей, находящихся в США. Для этого какие решения у нас есть?

Я думал об использовании некоторого сервиса geo dns, такого как edgedirector.com, и перенести американских пользователей на другой IP, но у меня есть серьезные сомнения относительно решений гео DNS. Я понимаю, что edgedirector может знать только местоположение DNS-сервера интернет-провайдера (или OpenDNS, Google Public DNS и т. Д.), Используемого клиентом, но не местоположение клиента. Я не очень понимаю, как они могут узнать IP-адрес клиента, теоретически клиенту не нужно запрашивать напрямую edgedirector.

Я подумал, что еще одним решением было использование Javascript и MaxMind GeoIP Javascript Web Service или клиента API Google, но это было бы слишком медленно.

Я также подумал об использовании некоторого обратного прокси-сервера, такого как Squid, Varnish, Ngninx и т. Д., Который работает напрямую с программным обеспечением Maxmind (или другим программным обеспечением) без необходимости переходить на бэкэнд (например, кешированная копия для каждой страны). Не знаю, возможно ли это с Squid или с каким-либо другим обратным прокси.

1 ответ

Если два пользователя - один из США, а другой - не из США, запрашивают один и тот же файл static.html и вы хотите показать разные версии для каждого из них, тогда squid не поможет. Вы можете использовать GeoIP MaxMind с nginx.

http://wiki.nginx.org/HttpGeoIPModule

Другие вопросы по тегам