多语种网站和机器人检测

我有一个网站,我实施多语言。

我为每个子域划分我的语言。

fr-fr.mywebsite.com es-es.mywebsite.com www.mywebsite.com // root domain => neutral language for bots 

在子域上,如果没有设置语言cookie,我使用子域作为语言代码。

在主域(www)上,如果没有设置语言cookie,则:

  • 如果它是一个机器人,我使用中性语言
  • 如果不是机器人,我使用“accept-language”标题检测用户语言。

如果它是一个机器人如何安全地检测? 我在这个问题上读了旧的话题,但人们只是使用“接受语言”,因为机器人没有发送这个头,但是,迄今为止,谷歌发送这个头…

检测它是一个bot还是反向检测它是否是Web浏览器会更安全吗? 因为如果机器人没有被检测到,那么这个网站将被错误的语言索引。

想法?

假设您使用PhP,您可以请求HTTP_USER_AGENT并查看用户代理是否为“googlebot”。

 if(strstr(strtolower($_SERVER['HTTP_USER_AGENT']), "googlebot")) { // what to do } 

这里是一个问题的链接(以及我从中提取的例子)。

如何检测search引擎机器人与PHP?