从 AWS ELB 检索客户端地理位置信息?

从 AWS ELB 检索客户端地理位置信息?

我们希望能够识别访问我们网站的用户来自哪个国家。我知道 ELB 支持代理协议,并将通过客户端的 IP 发送;我可以使用它手动进行 IP 地理查询。但是 ELB 是否内置了任何可以告诉我如何获取用户位置信息的东西(例如通过标头)?不需要太多信息,只需要客户端的国家/地区。

答案1

ELB 不提供此功能。但是 Cloudfront 提供此功能。 Amazon CloudFront 增加了设备检测、地理定位、主机标头转发、CORS 支持等功能!

您可以在 ELB 前面使用 CloudFront(将 ELB 配置为“自定义来源”),然后启用标Cloudfront-Viewer-Country头,这会执行两项操作:允许您知道地理位置查找结果,并使 Cloudfront 保留每个可缓存资源的国家/地区特定缓存(因此缓存的响应仍然在特定国家/地区的基础上运行。)

您还可以启用将浏览器标识为桌面、移动设备、平板电脑或智能电视的标头。

仔细查看定价结构的细节,您会发现在某些情况下(取决于国家、配置和流量),在 EC2 前面使用 CloudFront 实际上比不使用它便宜近 0.005 美元/GB,尽管这看起来很奇怪,但由于最近的价格结构变化。

相关内容