11

我即将创建一个robots.txt文件。

我正在使用记事本

我应该如何保存文件?UTF8ANSI还是什么?

另外,它应该是大写的 R吗?

在文件中,我指定了站点地图位置。这应该是大写的 S吗?

  User-agent: *
  Sitemap: http://www.domain.se/sitemap.xml

谢谢

4

6 回答 6

8

由于该文件应仅包含 ASCII 字符,因此通常将其保存为 ANSI 或 UTF-8 并不重要。

但是,如果可以选择,您应该选择 ANSI,因为当您将文件保存为 UTF-8 时,记事本会将 Unicode 字节顺序标记添加到文件的前面,这可能会使只知道 ASCII 的解释器无法读取文件。

于 2010-09-28T20:33:42.703 回答
2

我相信 Robots.txt “应该”是 UTF-8 编码的。

“预期的文件格式是以UTF-8 编码的纯文本。该文件由 CR、CR/LF 或 LF 分隔的记录(行)组成。”

/来自https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt

但是,记事本和其他程序会在文件的开头插入一个 3 字节的 BOM(字节顺序标记),导致 Google 无法读取第一行(显示“无效语法”错误)。

任何一个; 删除 BOM,或者更简单,在第一行添加换行符,以便第一行指令出现在第二行。

由 BOM 引起的“无效语法”行只会影响现在为空的第一行。

The rest of the lines will be read successfully.

于 2013-07-13T15:46:58.313 回答
1

至于编码:@Roland 已经搞定了。该文件应仅包含 URL。URL 中的非 ASCII 字符是非法的,因此将文件保存为 ASCII 应该没问题。

如果您出于某种原因需要提供 UTF-8,请确保content-type在文本文件的标题中正确指定。您必须在 Web 服务器的设置中进行设置。

至于区分大小写:

  • 根据robotstxt.org, robots.txt 文件需要小写:

    请记住使用所有小写的文件名:“robots.txt”,而不是“Robots.TXT”。

  • 关键字可能不区分大小写——我找不到关于它的参考资料——但我倾向于做所有其他人所做的事情:使用大写版本 ( Sitemap)。

于 2010-09-28T20:38:06.163 回答
0

我觉得你想太多了。我总是使用小写,只是因为它更容易。

您可以查看 SO 的 robots.txt。https://stackoverflow.com/robots.txt

于 2010-09-28T20:33:12.070 回答
0

我建议要么robots.txt用 UTF8 编码,不带 BOM,要么用 ASCII 编码。

对于包含非 ASCII 字符的 URL,我建议使用 UTF8,这在大多数情况下都可以,或者使用 URL 编码来表示 ASCII 中的所有字符。

看看维基百科的robots.txt文件——它是 UTF8 编码的。

请参阅参考资料:

于 2013-07-05T19:55:17.947 回答
0

I suggest you to use ANSI, because if your robots.txt is saved as UTF-8, then it will be marked as faulty in Google's Search Console due to the Unicode Byte Order Mark that's added to its beginning (as mentioned from Roland Illig above).

于 2018-05-09T13:41:18.907 回答