O Udacity usa o Cloudflare como um proxy para seus servidores reais. Qualquer solicitação para https://www.udacity.com
irá primeiro para a Cloudflare e será redirecionada para o domínio apropriado para a geolocalização da origem.
Verifique a resposta de:
curl -iv https://www.udacity.com
É, portanto, o endereço IP a partir do qual sua localização pode ser identificada. Cloudflare oferece este serviço - será adicione um cabeçalho de geolocalização a qualquer solicitação, que os servidores Udacity usam para determinar para qual domínio redirecioná-lo.
Esse método de determinar o local nem sempre é preciso e pode resultar em falsos positivos, especialmente se você estiver usando um provedor de VPN. Além disso, é bastante lento dependendo de como você olha para a geolocalização. Um provedor como o Cloudflare pode fazer isso de forma relativamente rápida, pois eles processam muitas solicitações e podem armazenar as informações em cache, para que elas não sejam adicionadas ao tempo de solicitação. Para o seu site de empresa de pequeno porte, eu não recomendaria usar o IP para determinar a localização do usuário.
O redirecionamento não é permanente, a propósito, como você pode mudar de país. Portanto, não faz sentido sempre redirecionar você para um subdomínio específico. Em vez disso, ele usa uma 302 Found
diretiva , que é temporária.
Outro método de redirecionar o usuário com base em sua localização seria verificar o Accept-Language
header do navegador, que especifica a localidade do cliente. A localidade pode ser, por exemplo, fr-CH
, que diz que você prefere francês, com uma localidade suíça (eles falam francês na Suíça, mas é sutilmente diferente dos franceses que falam na França, daí a necessidade de diferenciar) . Isso, no entanto, nem sempre é confiável - eu tenho todo o meu software definido para o inglês americano, e isso faz com que os sites achem que eu sou americano. Aqui, uma abordagem baseada em geolocalização seria mais confiável.