Работа с robots.txt

12
4
На сайте с 29.07.2003
Offline
22
1462

Здравствуйте, возникла необходимость прекрыть поисковикам некоторые разделы сайта и в рез-те возникло пару вопросов:

1. Возможно ли в robots.txt запретить для индексации все кроме файла с определенными парамаетрами (напрмер index.php?id=1)?

2. Стоит ли использовать мета-теги с дерективой NOFOLLOW, или лучше через robots.txt сделать все необходимое?

Всем спасибо!

B
На сайте с 13.11.2002
Offline
89
#1

для большей надёжности, стоит сделать и то и то, т.к. некоторые поисковики забывают что написано в роботсе...

а по поводу как сделать - используй поиск на форуме... (это давно избитая тема и сто раз разжёванная) :)

VC
На сайте с 27.10.2002
Offline
127
VIC
#2

4kict, "все, кроме..." в robots.txt запретить невозможно. Но если сформулировать задачу поконкретней, может быть, найдется и более разумное решение...

4
На сайте с 29.07.2003
Offline
22
#3

Вобщем есть форум, весь динамический с кучей всякой всячены которую не надо индексировать, а страницы типа index.php?id=1 было бы неплохо разрешить на индексацию, т.к. они содержат сообщения оставленые посетителями!

Александр Тер-Арутюнов
На сайте с 12.04.2004
Offline
72
#4

4kict, если страницы форума отличаются от index, например forumdisplay.php?id=... - то это не проблема:

Disallow: /forumdisplay.php

а если нет, то надо немного изменять структуру, например при помощи mod_rewrite и небольшой правки скрипта, добиться различия и запретить

"Победы - не окончательны, поражения - не смертельны, вопрос в том - достанет ли воли продолжать" - Уинстон Черчиль
4
На сайте с 29.07.2003
Offline
22
#5

Похоже что все очень плохо... Все ссылки на форуме это мой_домен.com/forum/index.php?id=... а проиндексировать надо только мой_домен.com/forum/index.php?id=1 :(

[Удален]
#6

Ну если допустимый параметр id для ссылок, которые не надо индексировать, всегда число, то делается примерно так:

User-agent: *

Disallow: /forum/index.php?id=2

Disallow: /forum/index.php?id=3

Disallow: /forum/index.php?id=4

Disallow: /forum/index.php?id=5

Disallow: /forum/index.php?id=6

Disallow: /forum/index.php?id=7

Disallow: /forum/index.php?id=8

Disallow: /forum/index.php?id=9

Disallow: /forum/index.php?id=0

Disallow: /forum/index.php?id=10

Disallow: /forum/index.php?id=11

Disallow: /forum/index.php?id=12

Disallow: /forum/index.php?id=13

Disallow: /forum/index.php?id=14

Disallow: /forum/index.php?id=15

Disallow: /forum/index.php?id=16

Disallow: /forum/index.php?id=17

Disallow: /forum/index.php?id=18

Disallow: /forum/index.php?id=19

Если не обязательно число, то надо дальше перечислять все возможные начальные символы. Дело нехитрое. :)

Александр Тер-Арутюнов
На сайте с 12.04.2004
Offline
72
#7

Можно сделать трюк, задействуется модуль апача mod_rewrite и файл .htaccess, делаем небольшой редирект:

1. в файле .htaccess (расположенном в папке forum) пишем:

DirectoryIndex index.html

RewriteEngine on

RewriteRule ^index.html$ index.php?id=1 [L]

2. далее в robots.txt запрещаем индексацию форума

Disallow: /forum/index.php

3. ставим ссылку на форум со страниц: мой_домен.com/forum/index.html что и должно проиндексироваться, так как не запрещено ;), но не забывайте, что страница это будет с нулевым ПР, как новая

4
На сайте с 29.07.2003
Offline
22
#8

Всем большой сенкс за помощ! По ходу возникло еще парочку ламерских вопроса:

1. Если я, при помощи Disallow, запретил какие-то страницы, но только на них есть ссылки на разделы которые надо индексировать, будут ли они проиндексированы?

2. Строка

Disallow: /forum/index.php?id=2

запретит индексацию страници /forum/index.php?id=2&t=6 ?

МП
На сайте с 26.04.2004
Offline
3
#9
2. Строка
Disallow: /forum/index.php?id=2
запретит индексацию страници /forum/index.php?id=2&t=6 ?

нет, но если на эту страницу нет ссылок, кроме как со страницы /forum/index.php?id=2, то эта странице непроиндексируется...

[Удален]
#10

Максим Палецких, не надо пожалуйста дезинформировать людей.

1. Если я, при помощи Disallow, запретил какие-то страницы, но только на них есть ссылки на разделы которые надо индексировать, будут ли они проиндексированы?

Скорее всего нет, если поисковик уже не нашел ссылки на них, или не найдет ссылку каким-нибудь образом в будущем.

2. Строка
Disallow: /forum/index.php?id=2
запретит индексацию страници /forum/index.php?id=2&t=6 ?

Да. Строка запрещает индексацию всех страниц, адрес которых начинается с символов /forum/index.php?id=2.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий