【发布时间】:2011-12-20 20:38:04
【问题描述】:
这些天,我遇到了几个 Google 搜索结果,其中包含的网站的链接与我的搜索词完全匹配。网站如何动态更改其内容,或者更确切地说,他们如何欺骗谷歌为我的关键字索引他们的页面。我读过关于内容农场的文章,但这似乎不是一个正确的答案。有人可以告诉我这种技术叫什么吗?我会尝试更多地了解它。
【问题讨论】:
标签: search-engine
这些天,我遇到了几个 Google 搜索结果,其中包含的网站的链接与我的搜索词完全匹配。网站如何动态更改其内容,或者更确切地说,他们如何欺骗谷歌为我的关键字索引他们的页面。我读过关于内容农场的文章,但这似乎不是一个正确的答案。有人可以告诉我这种技术叫什么吗?我会尝试更多地了解它。
【问题讨论】:
标签: search-engine
所有浏览器和爬虫都会在每次请求时向 Web 服务器发送一个称为 HTTP_USER_AGENT 字符串的内容,除非软件不是故意添加的。此字符串标识使用的浏览器、版本、渲染引擎和更多详细信息。 (见http://en.wikipedia.org/wiki/User_agent)
Web 服务器可以读取 HTTP_USER_AGENT 并更改提供的内容。例如,它被用作检测您是在手持设备还是大屏幕上的一部分,在这种情况下,您可能需要给定网页的不同布局。
人们投入大量资金为他们的网站增加流量,尤其是通过 Google 和 Bing 等大型搜索引擎。 SEO一词代表搜索引擎优化,是一种网页所有者优化其内容以使搜索引擎轻松提供相关点击的技术。如果您有一个使用大量 JavaScript 和 Ajax 的复杂网站,您可能希望向搜索引擎提供一个静态页面,以便他们阅读您的内容。
恶意网站有时会向搜索引擎提供自动生成、经 SEO 优化的内容以在搜索中排名靠前,但会向人类用户提供一个带有广告的简单页面,而不是增加收入。
提供此答案是为了替代正常动态内容(如 icyrock-com 已描述)是导致获取另一个页面的原因而不是 Google 指示的答案。
【讨论】:
我的理解是,访问 Google 或任何其他索引引擎的唯一方法是让机器人实际抓取您的网站并生成结果。显然,Google 可以抓取动态网站:
但是我发现就您的问题而言,这是一种进化而非革命性的变化。
我认为幕后发生的事情是这些事情的结合:
我将尝试在一个虚构的销售音乐的网站上解释其中的每一个 - 你有很多例子来比较体验。它当然会在 example.com 域上。
显然,作为一个想要提供某些东西的网站,您实际上拥有一些内容。通常,您会以某种方式对这些内容进行分组。假设我们的音乐网站可以按不同的类别对内容进行分组:
这些中的每一个都可以抽象地表示为一个标签。例如,我们的网站可以选择使用 example.com/tags/eagles 来代表 Eagles,或者使用 example.com/tags/rock 来代表所有摇滚乐队。 Google 可以将这些内容编入索引,因此任何潜在的搜索都可以生成指向我们网站的链接。
Prepared index 类似,但是是通用索引而不是真实内容。这可以通过多种方式准备,例如:
例如,我们的网站会从与音乐相关的文本中获取任何单词,并制作与之前相似的标签。例如。只需爬取维基百科上的Rock music页面,就可以获得很多标签。
这通常发生在您的网站启动并运行之后。假设我们在网站上放置了一个搜索框,然后用户进入并输入“摇滚音乐”。哦,我们已经知道了,所以搜索没有什么好处。但是,假设我们浏览了我们的 Web 服务器日志并查看了一些对 langeleik 的搜索。现在,这将是我们以前可能没有索引的东西。很酷,刚刚在我们的网站上生成了另一个标签。
显然,Google 不知道这一点 - 因此我们在 sitemap 中创建了一个条目,并且在另一个 Googlebot 抓取之后它就在那里。当用户在 Google 上搜索“langeleik”时,其中一个链接可能是指向 example.com/tags/langeleik 的链接。
还有其他可能更有价值的用户输入形式 - cmets、论坛帖子等。因此,有许多通用论坛除了托管论坛之外没有其他用途。这是一个很棒的数据源,您可以免费获得新内容。
最后,所有这些都应该转到您的站点站点地图。您可以拥有巨大的站点地图,请参阅:
最后一件事是推荐。同样,在您的网站启动并运行后,一些 Google 搜索将直接出现在您面前。那时您可以利用 HTTP Referer 标头(是的,这是拼写错误 - 请在 Wikipedia 上查看),请参阅:
请注意,Google 搜索是两者:
因此,您可以在上面搜索“langeleik”,但某些链接的标题为 e.g. “朗格莱克和哈普”。没有什么不寻常的,但也请注意相反的情况 - 如果您搜索“langeleik and harpe”,它不仅会找到包含 both 字词的所有页面,还会找到包含其中一个或另一个字词的网页。如果我们知道 harpe,但不知道 langeleik,并且有人搜索“langeleik and harpe”,我们将通过 HTTP Referer 标头获得 q 参数,例如 q=langeleik+harpe。很酷 - 如果我们愿意的话,还有一个词要添加到我们的站点地图中。
至于模糊性,请注意,当您搜索“老鹰”时,您可以找到从鸟类到 NFL 球队到摇滚乐队的所有内容。因此,即使我们是一个音乐网站,我们也可以将我们的视野(如果需要)扩展到最新的 NFL 新闻——这完全不相关,对某些网站非常有用。
我认为所有这些的组合是一个非常丰富的站点地图构建源。您可以使用上述技术非常轻松地生成数百万个唯一标签。因此,您键入的“任何内容”都可以在 example.com/tags 上找到。
但是,您必须注意,这只是一个错觉。例如,如果您搜索“ertfghedctgb”(在常规 QWERTY 键盘上轻松输入 - ert + fgh + edc + tgb),您很可能不会从 Google 获得任何信息(我目前没有)。对于任何人来说,将它放在他们的站点地图中是不够普遍的(或者对于搜索引擎来说不够普遍来索引它)。
【讨论】: