0

给定以下 URL:

  • example.com/products
  • example.com/products#/page-2
  • example.com/products#/page-3
  • ...

通过使用 robots.txt 文件,第一个 URL (example.com/products) 应该被编入索引,其他每个 URL 都应该被阻止被编入索引。如何才能做到这一点?

以下尝试均未以所需方式起作用:

  • Noindex: /products#/page-*
  • Noindex: /products\#/page-*
  • Noindex: /*/page-*
  • Noindex: /*#/page-*
  • Noindex: /*\#/page-*
4

2 回答 2

1

/products#/page不是一个独特的页面。实际的 url 很简单/products

#被滥用以挂钩到动态加载其他页面的 javascript 框架,但是,通常/products#/page意味着您的/products页面具有这样的元素<a name="#/page">,并且您不能阻止特定元素。

SPA 打破了网络。你最好创建真实的、独立的页面。

于 2018-12-07T21:16:13.600 回答
0

之后的一切都#称为“锚”。此信息不会传输到服务器,因此您无法从 PHP 或在服务器端执行的任何其他语言读取它。

作为@Evert Outlines,“锚标签”通常被javascript滥用,因为它可以在不需要实际重定向的情况下进行修改,从而允许为动态内容生成深层链接。(他们正在工作,因为客户端 javascript 会注意使用 AJAX 根据锚标记动态加载内容)

于 2018-12-07T23:14:14.840 回答