避免机器人页面重定向
Avoid page redirect for bots
第一次显示网站时,我需要用户确认他是18岁或以上(酒厂网站)。我的客户想要一个特定的页面(不是 popin 或弹出窗口),所以使用 cookies presence,我重定向到那个特定的页面。如果您没有确认,您将无法访问任何页面。
这是 SEO 的问题,因为机器人(如 GoogleBot)无法正确索引网站。
我怎样才能避免专门针对机器人的重定向?或者如何识别用户是人还是机器人?
我正在与 PHP 合作,我试图制作一个已知机器人列表并将其与 HTTP_USER_AGENT 进行比较,以防止重定向。但我不认为这是一个永久的解决方案(如果机器人更改他们的名字,或者如果涉及新闻机器人怎么办?)。
$crawlers = array(
'Googlebot',
'Baiduspider',
'ia_archiver',
'R6_FeedFetcher',
'NetcraftSurveyAgent',
'Sogou web spider',
'bingbot',
'Yahoo! Slurp',
'facebookexternalhit',
'PrintfulBot',
'msnbot',
'Twitterbot',
'UnwindFetchor',
'urlresolver',
'Butterfly',
'TweetmemeBot'
);
$implCrawlers = implode('|', $crawlers);
$isBot = (strpos($_SERVER['HTTP_USER_AGENT'], $implCrawlers ) !== false) ? true : false;
if (!$isBot) {
...
}
你可以去找这个包 https://github.com/JayBizzle/Crawler-Detect 当爬虫改变他们的名字时他们会更新他们的 repo。
第一次显示网站时,我需要用户确认他是18岁或以上(酒厂网站)。我的客户想要一个特定的页面(不是 popin 或弹出窗口),所以使用 cookies presence,我重定向到那个特定的页面。如果您没有确认,您将无法访问任何页面。
这是 SEO 的问题,因为机器人(如 GoogleBot)无法正确索引网站。
我怎样才能避免专门针对机器人的重定向?或者如何识别用户是人还是机器人?
我正在与 PHP 合作,我试图制作一个已知机器人列表并将其与 HTTP_USER_AGENT 进行比较,以防止重定向。但我不认为这是一个永久的解决方案(如果机器人更改他们的名字,或者如果涉及新闻机器人怎么办?)。
$crawlers = array(
'Googlebot',
'Baiduspider',
'ia_archiver',
'R6_FeedFetcher',
'NetcraftSurveyAgent',
'Sogou web spider',
'bingbot',
'Yahoo! Slurp',
'facebookexternalhit',
'PrintfulBot',
'msnbot',
'Twitterbot',
'UnwindFetchor',
'urlresolver',
'Butterfly',
'TweetmemeBot'
);
$implCrawlers = implode('|', $crawlers);
$isBot = (strpos($_SERVER['HTTP_USER_AGENT'], $implCrawlers ) !== false) ? true : false;
if (!$isBot) {
...
}
你可以去找这个包 https://github.com/JayBizzle/Crawler-Detect 当爬虫改变他们的名字时他们会更新他们的 repo。