如何根据用户所在的国家/地区显示不同的主页?

2021-12-20 00:00:00 networking php

我有两个域.rajasekar.com 和 rajasekar.in.我需要做的是,

I had two domains. rajasekar.com and rajasekar.in. What I need to do is that,

当来自印度的用户在地址栏中输入网址为 www.rajasekar.com 时,它应该打开 www.rajasekar.in

when a user from India types the url in the address bar as www.rajasekar.com then it should open www.rajasekar.in

当其他国家的用户在地址栏中输入网址为 www.rajasekar.com 时,它应该打开 www.rajasekar.com

When user from other country types the url in the address bar as www.rajasekar.com it should open www.rajasekar.com

我认为这是在 GOOGLE 中实现的.请帮助我实现这一目标

I think this is what implemented in GOOGLE. Please help me in achieving this

推荐答案

你可以尝试根据用户的远程地址猜测国家.

You can try to guess the country based on the remote address of the user.

以下是一个可行的解决方案,但您必须使用重定向逻辑:

The following is a working solution, you'll have to work the redirection logic though:

$remoteAddr = $_SERVER['REMOTE_ADDR'];
$lookupUrl = sprintf('http://api.hostip.info/country.php?ip=%s', $remoteAddr);
$country = trim(file_get_contents($lookupUrl));

if ('IN' === $country)
{
    $newUrl = 'http://www.rajasekar.in/';

    header(sprintf('Location: %s', $newUrl));
    printf('<a href="%s">Moved.</a>', $newUrl);
    exit();
}

不过,请注意来自印度的搜索引擎机器人也能够抓取 .com 内容.

Take care that search engine robots from India are able to crawl the .com content as well however.

相关文章