如果这个问题在错误的地方,请原谅我; 难以决定这是属于SO还是SF。 由于我不是要求代码,我想这里是最好的地方。 我们希望能够确定我们的用户访问我们的网站时来自哪个国家。 我知道ELB支持代理协议,并会通过客户端的IP发送; 我可以使用它来手动进行IP地理查找。 但是,ELB是否有内置的东西可以告诉我如何获取用户的位置信息,也许是通过头? 不需要太多的信息,只需要客户的国家。
ELB不提供这种能力。 然而,Cloudfront呢。 Amazon CloudFront添加设备检测,地理定位,主机转发,CORS支持等等!
您可以在ELB前面使用CloudFront(将ELBconfiguration为“自定义起源”),然后启用Cloudfront-Viewer-Country标头,该标头有两个function:允许您了解地理位置查找结果,并使Cloudfront保持每个可caching资源的特定于国家/地区的caching(因此,caching的响应仍按照特定国家/地区运行)。
您还可以启用标题,将浏览器标识为桌面,移动设备,平板电脑或智能电视。
仔细观察定价结构的细节,您会发现,在EC2前面使用CloudFront的某些情况下(取决于国家/地区,configuration和stream量)实际上可能比不使用它低$ 0.005 / GB,看起来很奇怪,由于近期价格结构的变化。