Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我如何知道谷歌蜘蛛或其他蜘蛛是否访问我的页面?_Php_Web Crawler_User Agent - Fatal编程技术网

Php 我如何知道谷歌蜘蛛或其他蜘蛛是否访问我的页面?

Php 我如何知道谷歌蜘蛛或其他蜘蛛是否访问我的页面?,php,web-crawler,user-agent,Php,Web Crawler,User Agent,我如何知道谷歌蜘蛛或其他蜘蛛是否访问我的页面 <?php if ("this is a spider") { header('Location: index.php'); exit; } ?> 您必须检查用户代理。您可以查看这些页面以了解更多信息: 然后,您只需解析变量$\u SERVER['HTTP\u USER\u AGENT']。虽然用户代理是谷歌机器人的一个良好标志,但更好的方法是使用概述的内容(在检查用户代理后),因为很容易伪造用户代理。功能和将有助于此。您可以使

我如何知道谷歌蜘蛛或其他蜘蛛是否访问我的页面

<?php

if ("this is a spider") {
header('Location: index.php');
exit;
}

?>

您必须检查用户代理。您可以查看这些页面以了解更多信息:


然后,您只需解析变量$\u SERVER['HTTP\u USER\u AGENT']。

虽然用户代理是谷歌机器人的一个良好标志,但更好的方法是使用概述的内容(在检查用户代理后),因为很容易伪造用户代理。功能和将有助于此。

您可以使用
USER\u AGENT
标题识别大多数搜索引擎爬虫,如中所述

然而,要注意的是,你试图做的事情——向爬虫提供不同于人类访问者的内容——是一种技术,搜索引擎根本不欢迎

据我所知,在谷歌的情况下,这可能会导致严重的惩罚,直到你的网站完全从索引中消失


我会顺其自然,转而采用合法的SEO优化。

您可以查找全局变量的值:$\u SERVER['HTTP\u USER\u AGENT']。对于google spider,该值看起来像“Googlebot*”


PHP的功能也很有用(检查返回的浏览器类型是否已知-如果不知道,则很可能是爬行器或爬虫)。

如果您不希望搜索机器人访问某些页面,请在
robots.txt
中标记它们。这就是为什么我们不喜欢只提供链接的答案。。。链接断开了。