Я отправляю изображения только в свой CDN.
У меня есть файл robots.txt, созданный в моем домене CDN, который отличается от того, который настроен в моем «обычном» домене www.
Я хочу отформатировать файл CDN robots.txt в моем домене CDN, чтобы он блокировал индексацию всего, кроме изображений (независимо от их местоположения)?
Причина всего этого в том, что я хочу избежать дублирования контента.
Это верно?
User-agent: *
Disallow: /
Allow: /*.jpg$
Allow: /*.jpeg$
Allow: /*.gif$
Allow: /*.png$
Внесу еще одну правку в свой пост - подождите ...
Если мой пост удовлетворит ваши вопросы, вы можете принять мой ответ;)
Если у вас есть все изображения в определенных папках, вы можете использовать:
Только для Google-бота:
User-agent: Googlebot-Image
Allow: /some-images-folder/
Для всех пользовательских агентов:
User-agent: *
Allow: /some-images-folder/
Additionally, Google has introduced increased flexibility to the robots.txt file standard through the use asterisks. Disallow patterns may include "*" to match any sequence of characters, and patterns may end in "$" to indicate the end of a name.
Чтобы разрешить определенный тип файла (например, изображения.gif), вы можете использовать следующую запись robots.txt:
User-agent: Googlebot-Image
Allow: /*.gif$
Info 1: By default (in case you don't have a robots.txt), all content is crawled.
Info 2: The Allow statement should come before the Disallow statement, no matter how specific your statements are..
Вот вики-ссылка на стандарт исключения роботов для более подробного описания.
В соответствии с этим ваш пример должен выглядеть так:
User-agent: *
Allow: /*.jpg$
Allow: /*.jpeg$
Allow: /*.gif$
Allow: /*.png$
Disallow: /
ЗАМЕТКА: Как отметил Нев в своем комментарии, также важно следить за строками запроса в конце расширений, таких как image.jpg?x12345
, поэтому также включайте
Allow: /*.jpg?*$
Значит, мой пример будет работать? Я был обеспокоен тем, что приоритет был правильным («разрешает» после «запрещать»)
Итак, согласно вашему Edit2, должен ли я изменить порядок «разрешает» и «запрещает»?
@nev Да - я привел исправленный пример внизу своего ответа и ссылку на стандарт исключения в Википедии;)
При использовании тестера карты сайта Google порядок разрешений и запретов не имеет никакого значения, но, тем не менее, ваша рекомендация кажется лучше. Я полагаю, что изображения со строками запроса будут ошибаться, но моя карта сайта не включает их, так что это не должно быть проблемой.
@nev Я испытал то же самое - для большинства агентов порядок не имеет значения, но я бы предпочел придерживаться официального соглашения / стандарта, как описано в ссылке;)
Просто примечание, которое может быть полезно - мне пришлось следить за строками запроса в конце расширений, например image.jpg? X12345, поэтому также включайте Allow: /*.jpg?*$
@nev: спасибо за информацию - добавлю вашу заметку к ответу;)
Ага! Disallow - это правильно! Разрешить тоже правильно!
И в качестве подсказки укажите еще и карту сайта! :)
Я внесу в свой ответ дополнительную информацию - надеюсь, это то, что вы ищете;)