伪装被定义为为搜索引擎蜘蛛和人类访问者提供不同的内容。在搜索引擎优化领域,它是一项充满争议的技术。和大部分具有争议的事情一样,伪装可以为好人或坏人所用。本章对它进行了深入的讨论,同时讨论了围绕在它身边的各种意见。地域定向是一项类似的技术,但是它基于分别的地理区域,为蜘蛛和用户提供不同的内容——它的使用基本上没有什么争议。这些技术通常都使用一种叫作IP分发的技术实现。
在编写任何代码之前,请确认理解这些基本定义:
(一)伪装指向访问WEB站点的搜索引擎提供和向人类访问者提供不一样的内容。实际伪装通过IP分发实现。
(二)在根据不同类型的访问者提供不同信息方面,地域定向类似于伪装,但是它根据是访问者在地球上的不同地理位置。并没有把搜索引擎蜘蛛和人类访问者区别对待。当您希望向来自法国的用户显示不同于来自美国的用户时,这种技术就十分有用。之所以将伪装和地域定向两者放在同一章中,是因为它们通常都是使用同样的技术来实现的。
(三)IP分发使用链接计算机的IP网络地址,而无论它是机器人或人类,发送不同的内容。在这个过程中,它使用数据库。在伪装的情况下,数据库存储着将会访问站点的不同蜘蛛的IP地址,编程人员可以利用这些信息来生成不同的表现或逻辑。在地域定向的情况下,数据库存储着不同范围的IP地址段,指示着这些不同的IP地址段分别位于世界上哪个地方。地域定向的脚本扫描这个列表,以得知当前访问者的IP在于哪个国家/地区,编程人员可以利用这些信息来生成不同的表现或逻辑。通常,IP分发的伪装在实现上还会查看请求的User-Agent报头。用户代理报头是浏览器和蜘蛛都会发送的,但是这并不一定权威,因为用户和蜘蛛都有可能对自己是谁不说实话。在前一种情况下,蜘蛛声称自己是用户,以检测运用了伪装的网站,免得它向蜘蛛提供优化过的信息而向用户提供另外一套。在后一种情况下,用户也可能在浏览器中发送用户代理,以检测是否这个站点采用了伪装。它通过伪装其用户代理,来查看是否有伪装的存在。这就是为什么伪装的很多实现都不使用它来作为检测因素。