Мы хотим иметь возможность определять, из какой страны приезжают наши пользователи при посещении нашего сайта. Я знаю, что ELB поддерживает протокол прокси и будет отправлять сообщения через IP-адрес клиента; который я мог использовать для гео-поиска IP вручную. Но есть ли в ELB что-нибудь, что могло бы сказать мне, как получить информацию о местоположении пользователя, возможно, через заголовок? Не нужно много информации, только страна клиента.
ELB не предлагает такой возможности. Cloudfront, однако, делает. Amazon CloudFront добавляет обнаружение устройств, геотаргетинг, пересылку заголовков хоста, поддержку CORS и многое другое!
Вы можете использовать CloudFront перед своим ELB (настроив ELB как «настраиваемый источник»), а затем включить Cloudfront-Viewer-Country
заголовок, который выполняет две функции: позволяет узнать результат поиска по геолокации и заставляет Cloudfront хранить кеш-память каждого кэшируемого ресурса для конкретной страны (поэтому кешированные ответы по-прежнему действуют в зависимости от страны).
Вы также можете включить заголовки, которые будут идентифицировать браузер как настольный компьютер, мобильный телефон, планшет или интеллектуальное телевидение.
Присмотритесь к мелкому шрифту с ценовой структурой, и вы обнаружите, что в некоторых случаях (в зависимости от страны, конфигурации и объема трафика) использование CloudFront перед EC2 может быть почти на 0,005 доллара США за ГБ дешевле, чем его неиспользование, как ни странно, из-за недавних изменений структуры цен.