【问题标题】:How to tell Jekyll to hide one page from search engines?如何告诉 Jekyll 对搜索引擎隐藏一页?
【发布时间】:2018-04-15 10:19:10
【问题描述】:

我有一个网站,其中包含我的公开个人资料,用 Jekyll 制作。

它还包含一个页面,例如“details.html”,其中包含有关我的更多个人信息。我只希望那些我给出链接的人看到这个页面。特别是,我想对搜索引擎隐藏它。

我怎样才能最好地做到这一点?我听说我可以添加 robots.txt 文件或包含元标记“nofollow”或“noindex”。

  1. 这里通常的解决方案是什么?
  2. 如果要采取的方法是添加元标记,我如何在标准 Jekyll 设置下仅将其添加到一个页面中?

【问题讨论】:

  • “如何让 Jekyll 躲起来”...我是唯一一个无意中发现这很有趣的人吗?

标签: jekyll noindex


【解决方案1】:

robots.txt 是告诉搜索引擎索引什么和不索引什么的标准方式(不仅适用于 Jekyll,也适用于一般网站)。

只需在 Jekyll 站点的根目录中创建一个名为 robots.txt 的文件,其中包含不应编入索引的路径。

例如

User-agent: *
Disallow: /2017/02/11/post-that-should-not-be-indexed/
Disallow: /page-that-should-not-be-indexed/
Allow: /

Jekyll 会自动robots.txt 复制到生成站点的文件夹中。


您还可以测试您的 robots.txt 以确保它按您期望的方式工作:https://support.google.com/webmasters/answer/6062598?hl=en


2021-08-02 更新 - Google 特定设置:

您可以通过在页面的 HTML 代码中包含 noindex 元标记或在 HTTP 响应中返回 noindex 标头来阻止页面出现在 Google 搜索中

有两种方法可以实现noindex:作为元标记和作为 HTTP 响应标头。它们具有相同的效果;选择对您的网站更方便的方法。

<meta>标签

为防止大多数搜索引擎网络爬虫将您网站上的网页编入索引,请将以下元标记放入您网页的 <head> 部分:

<meta name="robots" content="noindex">

要防止只有 Google 网络爬虫将页面编入索引:

<meta name="googlebot" content="noindex">

HTTP 响应标头

除了元标记,您还可以在响应中返回值为noindexnoneX-Robots-Tag 标头。下面是一个带有 X-Robots-Tag 指示爬虫不要索引页面的 HTTP 响应示例:

HTTP/1.1 200 OK
(...)
X-Robots-Tag: noindex
(...)

更多详情:https://developers.google.com/search/docs/advanced/crawling/block-indexing

【讨论】:

  • 但是普通用户可以去 www.mysite.com/robots.txt 找到这些网址,对吧?
  • 好的。这是次优的,但不是致命的。您知道元标记解决方案是否也有效吗?那么该标签的标准应用程序是什么?
  • 元标记解决方案也适用于大多数搜索引擎(包括 Google - support.google.com/webmasters/answer/93710?hl=en),但您需要选择其中之一,而不是两者兼而有之。
  • 来自Google's own documentation:“robots.txt 文件告诉搜索引擎爬虫,爬虫可以访问您网站上的哪些 URL。这主要用于避免您的网站因请求而过载;它不是一种机制用于阻止 Google 访问网页。要阻止 Google 访问网页,请block indexing with noindex 或使用密码保护该页面。"
【解决方案2】:

robots.txt 文件是一个很好的解决方案,但.htaccess 可能更适合此目的。另外,请确保您有一个私有存储库!

请注意,将您的代码托管在 CloudCannon(付费帐户)上可以让您在其界面中轻松设置所有这些内容。

【讨论】:

    【解决方案3】:

    试试:

    ---
    layout: 
    sitemap: false
    ---
    

    因此,只要您在前面的内容中包含 sitemap: false 行,您就可以从站点地图中排除该页面。


    检查:

    • gem 'jekyll-sitemap' 添加到您网站的Gemfile 并运行bundle
    • 将以下内容添加到您网站的 _config.yml:
    plugins:
        - jekyll-sitemap
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多