Подтвердить что ты не робот

Robots.txt Разрешить вложенную папку, но не родительскую

Может кто-нибудь объяснить правильную команду Robots.txt для следующего сценария.

Я хотел бы разрешить доступ к:

/каталог/подкаталог/..

Но я также хотел бы ограничить доступ к /directory/, не соблюдая вышеуказанное исключение.

4b9b3361

Ответ 1

Имейте в виду, что нет официального официального стандарта и что любой искатель веб-страниц может с радостью игнорировать ваш robots.txt

Согласно публикациям групп Google, следующее работает как минимум с GoogleBot;

User-agent: Googlebot 
Disallow: /directory/ 
Allow: /directory/subdirectory/

Ответ 2

Если это действительно каталоги, то принятый ответ, вероятно, ваш лучший выбор. Но если вы пишете приложение, а каталоги - это динамически создаваемые пути (контексты, маршруты и т.д.), Тогда вы можете использовать метатеги вместо определения в файле robots.txt. Это дает вам преимущество в том, что вам не нужно беспокоиться о том, как разные браузеры могут интерпретировать/приоритизировать доступ к пути к подкаталогу.

Вы можете попробовать что-то подобное в коде:

if is_parent_directory_path
   <meta name="robots" content="noindex, nofollow">
end

Ответ 3

Я бы рекомендовал использовать тестер робота Google. Используйте инструменты Google для веб-мастеров - https://support.google.com/webmasters/answer/6062598?hl=en

Вы можете редактировать и тестировать URL-адреса прямо в инструменте, а также получать множество других инструментов.