停止搜索引擎以索引页面的特定部分

Ion*_*zău 15 html javascript php seo

我有一个php页面,可以写一本100页的书.每个页面都有一个特定的URL(例如/my-book/page-one,/my-book/page-two等).

翻页时,我使用历史记录API更改网址url.js.

由于所有书籍内容都是从服务器端呈现的,问题是内容是由搜索引擎索引的(特别是我指的是谷歌),但网址是错误的(例如,它找到了一个片段,page-two但网址是page-one) .

如何阻止搜索引擎(至少谷歌)索引页面上的所有内容,但只索引可见的书页?

如果我以不同的方式呈现内容,它会工作吗:例如,<div data-page-number="1" data-content="Lorem ipsum..."></div>然后在JavaScript端以所需格式更改内容?这会使页面变慢,实际上我不确定Google是否不会通过JavaScript索引更改的内容.

代码如下所示:

<div data-page="1">Page 1</div>
<div data-page="2">Page 2</div>
<div data-page="3" class="current-page">Page 3</div>
<div data-page="4">Page 4</div>
<div data-page="5">Page 5</div>
Run Code Online (Sandbox Code Playgroud)

然后只有可见的div就是那个.current-page.相同的内容在多个URL上提供,因为这是必需的,因此用户可以在页面之间切换.

例如,/book/page/3渲染这段HTML同时/book/page/4渲染相同的东西,唯一的区别current-page是添加到第4个元素的类.

谷歌确实为不同的网址编制索引,但它做错了:例如,向用户呈现的代码段Page 5链接(不是)./book/page/2Page 2Page 5

如何告诉谷歌(和其他搜索引擎)我只对索引内容的索引感兴趣.current-page

OBe*_*der 5

据我所知,他的问题是你对许多网址都有相同的内容.喜欢:

www.my-awesome-domain.com/my-book/page/42

www.my-awesome-domain.com//my-book/page/7

页面的可见内容可通过JavaScript进行调整,即用户在点击您网站上的某些元素时执行.

在这种情况下,您需要做两件事:

  1. 使用此google文档中描述的任何方式将您的网址标记为Canonical网页:https://support.google.com/webmasters/answer/139066?hl = zh-CN
  2. 您需要添加一个功能,在完整页面刷新后,每个页面将加载到相同的状态,例如,您可以在此处文章中的desiribed导航时使用hash参数:或者这里是技术概述

今天谷歌机器人正在他们的官方博客中宣布执行JavaScript:https: //webmasters.googleblog.com/2015/10/deprecating-our-ajax-crawling-scheme.html

因此,如果您在按下"刷新"(F5)并且将指定规范页面属性时获得正确的页面行为,则将正确地抓取页面,并且当您将按照该链接进行链接页面时.

如果您需要更多指导如何在url.js中执行此操作请发布另一个问题(因此将为其他人提供正确的文档),我将很乐意为您提供帮助.


Ale*_*ons 5

答案很简单:你做不到。在不同的 URL 下保留相同的内容并要求搜索引擎只索引其中的一部分,这在技术上是不可能的。

如果您同意只对一页进行索引,则可以使用之前建议的规范 URL。您将链接到主页面的规范 URL 放置在每个子页面上。

您可能会发现“黑客”使用了用于 Google Search Appliance 的特殊标签:googleongoogleoff

https://www.google.com/support/enterprise/static/gsa/docs/admin/70/gsa_doc_set/admin_crawl/preparing.html

唯一的问题是这很可能不适用于 Google Bot(至少没有人会保证它会)或任何其他搜索引擎。


Ghi*_*taB 1

将内容保存在 JSON 文件中,不要HTML 中呈现。从服务器仅提供正确的页面:用户可见的内容。

当用户单击按钮(上一页/下一页链接等)时,使用 JavaScript 呈现 JSON 文件的内容并更改 url,就像您已经在做的那样。

这样您就知道您始终从服务器提供正确的内容,并且 Google 机器人显然会正确索引页面。

  • 这似乎不太可能起作用。SPA 的兴起使得搜索引擎投入了大量精力来索引 JS 生成的内容。 (2认同)