Используйте файл robots.txt, чтобы заблокировать все, кроме изображений

Я отправляю изображения только в свой CDN.

У меня есть файл robots.txt, созданный в моем домене CDN, который отличается от того, который настроен в моем «обычном» домене www.

Я хочу отформатировать файл CDN robots.txt в моем домене CDN, чтобы он блокировал индексацию всего, кроме изображений (независимо от их местоположения)?

Причина всего этого в том, что я хочу избежать дублирования контента.

Это верно?

User-agent: * 
Disallow: / 
Allow: /*.jpg$
Allow: /*.jpeg$
Allow: /*.gif$
Allow: /*.png$

Я внесу в свой ответ дополнительную информацию - надеюсь, это то, что вы ищете;)

iLuvLogix 17.10.2018 09:28

Внесу еще одну правку в свой пост - подождите ...

iLuvLogix 17.10.2018 09:54

Если мой пост удовлетворит ваши вопросы, вы можете принять мой ответ;)

iLuvLogix 17.10.2018 10:15
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
3
1 152
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Если у вас есть все изображения в определенных папках, вы можете использовать:

Только для 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?*$

Значит, мой пример будет работать? Я был обеспокоен тем, что приоритет был правильным («разрешает» после «запрещать»)

nev 17.10.2018 09:47

Итак, согласно вашему Edit2, должен ли я изменить порядок «разрешает» и «запрещает»?

nev 17.10.2018 10:04

@nev Да - я привел исправленный пример внизу своего ответа и ссылку на стандарт исключения в Википедии;)

iLuvLogix 17.10.2018 10:08

При использовании тестера карты сайта Google порядок разрешений и запретов не имеет никакого значения, но, тем не менее, ваша рекомендация кажется лучше. Я полагаю, что изображения со строками запроса будут ошибаться, но моя карта сайта не включает их, так что это не должно быть проблемой.

nev 17.10.2018 10:18

@nev Я испытал то же самое - для большинства агентов порядок не имеет значения, но я бы предпочел придерживаться официального соглашения / стандарта, как описано в ссылке;)

iLuvLogix 17.10.2018 10:23

Просто примечание, которое может быть полезно - мне пришлось следить за строками запроса в конце расширений, например image.jpg? X12345, поэтому также включайте Allow: /*.jpg?*$

nev 24.10.2018 13:02

@nev: спасибо за информацию - добавлю вашу заметку к ответу;)

iLuvLogix 24.10.2018 13:45

Ага! Disallow - это правильно! Разрешить тоже правильно!
И в качестве подсказки укажите еще и карту сайта! :)

Другие вопросы по теме