Wir möchten in der Lage sein, zu erkennen, aus welchem Land unsere Benutzer kommen, wenn sie unsere Site besuchen. Ich weiß, dass ELB das Proxy-Protokoll unterstützt und die IP des Clients sendet. Damit könnte ich manuell eine IP-Geosuche durchführen. Aber ist in ELB irgendetwas integriert, das mir sagen würde, wie ich die Standortinformationen des Benutzers abrufen kann, vielleicht über einen Header? Ich brauche nicht viele Informationen, nur das Land des Clients.
Antwort1
ELB bietet diese Funktion nicht. Cloudfront jedoch schon. Amazon CloudFront fügt Geräteerkennung, Geo-Targeting, Host-Header-Weiterleitung, CORS-Unterstützung und mehr hinzu!
Sie könnten CloudFront vor Ihrem ELB verwenden (indem Sie den ELB als „benutzerdefinierten Ursprung“ konfigurieren) und dann den Cloudfront-Viewer-Country
Header aktivieren, wodurch zwei Dinge erreicht werden: Sie erfahren das Ergebnis der Geolokalisierungssuche und Cloudfront führt einen länderspezifischen Cache für jede zwischenspeicherbare Ressource (sodass sich zwischengespeicherte Antworten weiterhin länderspezifisch verhalten).
Sie können auch Header aktivieren, die den Browser als Desktop-, Mobiltelefon-, Tablet- oder Smart-TV-Browser identifizieren.
Wenn Sie sich das Kleingedruckte der Preisstruktur genau ansehen, werden Sie feststellen, dass die Verwendung von CloudFront vor EC2 in einigen Fällen (je nach Land, Konfiguration und Verkehrsaufkommen) aufgrund der jüngsten Änderungen der Preisstruktur tatsächlich fast 0,005 $/GB günstiger sein kann als die Nichtverwendung, so seltsam das auch erscheinen mag.