Как robots.txt может запретить все URL-адреса, кроме URL-адресов, содержащихся в карте сайта - PullRequest
2 голосов
/ 02 октября 2010

Мне нужно контролировать, какие URL разрешено индексировать.Для этого я хочу разрешить Google индексировать только те URL-адреса, которые указаны в моих файлах Sitemap, и запретить Google индексировать что-либо еще.

Самый простой способ решить эту проблему, если есть способ настройки роботов..txt, чтобы запретить все:

User-agent: *

Disallow: /

И в то же время разрешить каждый URL, указанный в:

Файлы Sitemap: sitemap1.xml

Файлы Sitemap: sitemap2.xml

Может ли файл robots.txt быть настроен для этого?Или есть какие-то другие обходные пути?

Ответы [ 3 ]

2 голосов
/ 04 октября 2010

Это не связанный с robots.txt ответ, он связан с протоколом Robots в целом, и в прошлом я очень часто использовал эту технику, и она работает как чудо.

Насколько я понимаю, ваш сайт динамичный, так почему бы не использовать метатег robots ? Как сказал x0n, файл размером 30 МБ, вероятно, создаст проблемы как для вас, так и для сканеров, а добавление новых строк в файлы размером 30 МБ - это головная боль ввода-вывода. В любом случае, на мой взгляд, лучше всего вставлять на страницы, которые вы не хотите, индексированные, что-то вроде:

<META NAME="ROBOTS" CONTENT="NOINDEX" />

Страница все равно будет сканироваться, но она не будет проиндексирована. Вы по-прежнему можете отправлять карты сайта с помощью ссылки на карту сайта в файле robots.txt, вам не нужно остерегаться, чтобы не включать в страницы карты сайта, на которых есть метатег, и это поддерживается всеми основными поисковыми системами, насколько я помню и по Baidu.

1 голос
/ 02 октября 2010

Вам нужно будет добавить запись Allow для каждого элемента в карте сайта. Это громоздко, но легко сделать что-то программно с тем, что читается в карте сайта, или, если карта сайта создается сама по себе, то основывайте это на том же коде.

Обратите внимание, что Allow является расширением протокола robots.txt и поддерживается не всеми поисковыми системами, хотя поддерживается Google.

0 голосов
/ 02 октября 2010

Войдя в http://www.google.com/webmasters/, вы можете отправлять карты сайта непосредственно в поисковую систему Google.

...