robots.txt; Какая кодировка?
Я собираюсь создать файл robots.txt.
Я использую блокнот.
Как мне сохранить файл? UTF8, ANSI или что?
Кроме того, это должен быть капитал R?
И в файле я указываю местоположение карты сайта. Должно ли это быть с большой буквы S?
User-agent: *
Sitemap: http://www.domain.se/sitemap.xml
Спасибо
7 ответов
Поскольку файл должен состоять только из символов ASCII, обычно не имеет значения, сохраните ли вы его как ANSI или UTF-8.
Однако вам следует выбрать ANSI, если у вас есть выбор, потому что при сохранении файла в формате UTF-8 блокнот добавляет метку порядка байтов Unicode в начало файла, что может сделать файл нечитаемым для интерпретаторов, которые знают только ASCII.
Я считаю, что Robots.txt "должен" быть в кодировке UTF-8.
"Ожидаемый формат файла - простой текст, закодированный в UTF-8. Файл состоит из записей (строк), разделенных CR, CR/LF или LF".
/ из https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt
Но блокнот и другие программы вставят 3-байтовую спецификацию в начало файла, в результате чего Google не сможет прочитать эту первую строку (с ошибкой "неверный синтаксис").
Или; удалить спецификацию или, что намного проще, добавить разрыв строки в первой строке, чтобы первая строка инструкций была в строке номер два.
Строка "неверный синтаксис", вызванная спецификацией, повлияет только на первую строку, которая теперь пуста.
Остальные строки будут прочитаны успешно.
Сладкий трюк, не правда ли!:)
Что касается кодировки: @Roland уже прибил его. Файл должен содержать только URL. Не-ASCII символы в URL недопустимы, поэтому сохранение файла в формате ASCII должно быть просто нормальным.
Если по какой-то причине вам нужно обслуживать UTF-8, убедитесь, что это правильно указано в content-type
заголовок текстового файла. Вам нужно будет установить это в настройках вашего веб-сервера.
Что касается чувствительности к регистру:
Согласно robotstxt.org, файл robots.txt должен быть в нижнем регистре:
Не забудьте использовать все строчные буквы для имени файла: "robots.txt", а не "Robots.TXT".
Ключевые слова, вероятно, нечувствительны к регистру - я не могу найти ссылку на это - но я склонен делать то, что делают все остальные: использовать заглавные буквы (
Sitemap
).
Большинство ответов кажутся устаревшими. По состоянию на 2022 год Google определяет формат следующим образом (источник):
Формат файла
Файл robots.txt должен быть текстовым файлом в кодировке UTF-8 , а строки должны быть разделены
CR
,CR/LF
, илиLF
.Google игнорирует недопустимые строки в файлах robots.txt, в том числе метку порядка байтов Unicode (BOM) в начале файла robots.txt, и использует только допустимые строки. Например, если загруженный контент представляет собой HTML, а не правила robots.txt, Google попытается проанализировать контент и извлечь правила, игнорируя все остальное.
Точно так же, если кодировка символов в файле robots.txt отличается от UTF-8, Google может игнорировать символы, не входящие в диапазон UTF-8, что может сделать правила robots.txt недействительными.
В настоящее время Google применяет ограничение размера файла robots.txt в 500 кибибайт (КиБ). Содержимое, превышающее максимальный размер файла, игнорируется. Вы можете уменьшить размер файла robots.txt, объединив директивы, которые приведут к увеличению размера файла robots.txt. Например, поместите исключенный материал в отдельный каталог.
TL;DR, чтобы ответить на вопрос:
- Вы можете использовать Блокнот, чтобы сохранить файл. Просто используйте кодировку UTF-8.
- Он может содержать или не содержать спецификацию; Все равно это будет проигнорировано.
- Файл должен быть назван точно. Без заглавной буквы "Р".
- Имена полей не чувствительны к регистру (источник ). Следовательно, оба,
sitemap
иSitemap
в порядке.
Имейте в виду, чтоrobots.txt
просто стандарт де-факто . Нет никакой гарантии, что какой-либо сканер прочитает этот файл так, как предлагает Google, и ни один сканер не обязан соблюдать какие-либо установленные правила.
Я рекомендую любую кодировку robots.txt
в UTF8, без спецификации или в кодировке ASCII.
Для URL-адресов, которые не являются символами ASCII, я предлагаю либо использовать UTF8, что хорошо в большинстве случаев, либо использовать URL-кодирование для представления всех символов в ASCII.
Взгляните на Википедию robots.txt
Файл - это кодировка UTF8.
Смотрите ссылки:
- http://hakre.wordpress.com/2010/07/20/encoding-of-the-robots-txt-file/
- http://www.bing.com/blogs/site_blogs/b/webmaster/archive/2009/11/05/robots-speaking-many-languages.aspx
- http://vincentwehren.com/2011/04/09/robots-txt-utf-8-and-the-utf-8-signature/
- http://www.seroundtable.com/archives/017801.html
Я думаю, ты слишком много думаешь. Я всегда пишу строчными буквами, потому что это проще.
Вы можете просмотреть robots.txt SO. https://stackru.com/robots.txt
Я предлагаю вам использовать ANSI, потому что если ваш robots.txt сохранен как UTF-8, то он будет помечен как неисправный в поисковой консоли Google из-за метки порядка байтов Unicode, добавленной в его начало (как упоминалось выше в Roland Illig).).