gpt4 book ai didi

php - 通过 geo ip 重定向用户而不是 googlebot

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:42:35 24 4
gpt4 key购买 nike

我们有两个网站,一个供欧盟用户使用,另一个仅供美国用户使用。

我使用一个简单的系统来检查 IP 的来源。

  $geo = json_decode(file_get_contents("http://extreme-ip-lookup.com/json/$user_ip"));
$country = $geo->countryCode;
$countrycode = $sanitizer->pageName(substr($country, 0, 2));

之后,根据响应,我将用户重定向到正确的站点。

if ($countrycode == 'us'){
// go to usa website
}else{
// do nothing
}

现在,问题是 Google 来自美国,我不需要以扫描主要欧盟网站的方式重定向 googlebot(和其他机器人)。

我在网上看了很多,最后我这样做了:

if( strstr(strtolower($_SERVER['HTTP_USER_AGENT']), "googlebot") )  {
$countrycode = 'en'; // force him to have en instead of us
}

现在,我对此不是很满意,Googlebot 扫描了我的网站,但我不确定是否工作得很好。因为谷歌速度测试只能看到美国网站。恐怕这不是解决此问题的最佳方法。

你有更好的想法吗?

最佳答案

查看来自 Google 的指南

https://support.google.com/webmasters/answer/182192?hl=en

我的建议是实现 href-lang 并为每个语言版本提供单独的 URL

https://support.google.com/webmasters/answer/189077

我只会用 302 重定向将主页重定向到相应的语言版本

所以

example.com > 302 > example.com/us 如果你在美国example.com > 302 > example.com/uk 如果你在英国

并且它们都与引用另一个版本的 href-lang 相关联。谷歌将列出

美国的 example.com/us

英国的 example.com/uk

像这样作为主页。对所有子页面执行相同的操作,因此 Google 将只列出英国的/uk/页面。使用这种方法,您不必关心 Googlebot。从理论上讲,可以向 Googlebot 展示一些不同的东西,但这是有风险的,因为他们不只是使用一个 Googlebot。

关于php - 通过 geo ip 重定向用户而不是 googlebot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56390389/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com