1. wfedin - 15 января 2010 — 18:05 - перейти к сообщению
Сильно не пинать, набирал в поске robots.txt без результата. Мог бы кто обьяснить как его правильно написать для форума, а лучше выложить уже написанный и прилепить его FAQ
2. wfedin - 16 января 2010 — 17:21 - перейти к сообщению
3. Леголегс - 13 марта 2010 — 19:16 - перейти к сообщению
Апнем тему.
Я тут решил составить "идеальный" robots.txt раз и навсегда. Получилось вот такое:
Делалось для форума на своём домене. Если ваш форум в поддиректории forum - везде исправьте /messenger.php на /forum/messenger.php и т.д.
Задачи, решаемые этим robots.txt: минимизация никому не интересных вещей в выдаче (например, отлупы незареганым), минимизация слишком динамических вещей, минимизация дублирования инфы. Задача продвижения в результатах не стояла.
Какие-то вопросы/коменты/исправления?
Заранее скажу: / и /index.php - одинаковые, так что одну надо выкинуть. Тоже самое касается
/forums.php?forum=*&p=1$ и /forums.php?forum=*$
/tools.php?action=members&s=&order=ASC&p=1$ и
/tools.php?action=members$
/topic.php?forum=*&topic=*&p=1$ и /topic.php?forum=*&topic=*$
Отдельно надо упомянуть /topic.php?forum=*&topic=*&postid= и /topic.php?forum=*&topic=*&v=l - они страшно замусоривают выдачу.
Правила форума на подопечном ресурсе свои, так что они не исключены из выдачи. Если кому надо -
Я тут решил составить "идеальный" robots.txt раз и навсегда. Получилось вот такое:
CODE:
User-agent: *
Disallow: /admincenter.php
Disallow: /forums.php?action=markall
Disallow: /index.php?c=
Disallow: /loginout.php
Disallow: /messenger.php
Disallow: /postings.php
Disallow: /post.php
Disallow: /printpage.php
Disallow: /profile.php?action=lostpassword
Disallow: /register.php
Disallow: /search.php
Disallow: /set*.php
Disallow: /tools.php?action=chat
Disallow: /tools.php?action=mail
Disallow: /tools.php?action=online
Disallow: /tools.php?action=preport
Disallow: /tools.php?action=smiles
Disallow: /tools.php?action=threadstop
Disallow: /index.php$
Disallow: /forums.php?forum=*&p=1$
Disallow: /tools.php?action=members&s=&order=ASC&p=1$
Disallow: /topic.php?forum=*&topic=*&p=1$
Disallow: /topic.php?forum=*&topic=*&postid=
Disallow: /topic.php?forum=*&topic=*&v=l
Disallow: /admincenter.php
Disallow: /forums.php?action=markall
Disallow: /index.php?c=
Disallow: /loginout.php
Disallow: /messenger.php
Disallow: /postings.php
Disallow: /post.php
Disallow: /printpage.php
Disallow: /profile.php?action=lostpassword
Disallow: /register.php
Disallow: /search.php
Disallow: /set*.php
Disallow: /tools.php?action=chat
Disallow: /tools.php?action=mail
Disallow: /tools.php?action=online
Disallow: /tools.php?action=preport
Disallow: /tools.php?action=smiles
Disallow: /tools.php?action=threadstop
Disallow: /index.php$
Disallow: /forums.php?forum=*&p=1$
Disallow: /tools.php?action=members&s=&order=ASC&p=1$
Disallow: /topic.php?forum=*&topic=*&p=1$
Disallow: /topic.php?forum=*&topic=*&postid=
Disallow: /topic.php?forum=*&topic=*&v=l
Делалось для форума на своём домене. Если ваш форум в поддиректории forum - везде исправьте /messenger.php на /forum/messenger.php и т.д.
Задачи, решаемые этим robots.txt: минимизация никому не интересных вещей в выдаче (например, отлупы незареганым), минимизация слишком динамических вещей, минимизация дублирования инфы. Задача продвижения в результатах не стояла.
Какие-то вопросы/коменты/исправления?
Заранее скажу: / и /index.php - одинаковые, так что одну надо выкинуть. Тоже самое касается
/forums.php?forum=*&p=1$ и /forums.php?forum=*$
/tools.php?action=members&s=&order=ASC&p=1$ и
/tools.php?action=members$
/topic.php?forum=*&topic=*&p=1$ и /topic.php?forum=*&topic=*$
Отдельно надо упомянуть /topic.php?forum=*&topic=*&postid= и /topic.php?forum=*&topic=*&v=l - они страшно замусоривают выдачу.
Правила форума на подопечном ресурсе свои, так что они не исключены из выдачи. Если кому надо -
CODE:
Disallow: /tools.php?action=rules
4. nikk - 13 марта 2010 — 21:54 - перейти к сообщению
Леголегс пишет:
Disallow: /index.php$
Зачем закрывать главную страницу?
5. alexx - 13 марта 2010 — 21:56 - перейти к сообщению
Думаю, нужно оставить, то что относится к контекту форума.
Остальное нафиг с пляжа.
(Добавление)
Вот попались рекомендации для другого движка
Думаю, что надо и по нашему движку написать "идеальный" вариант.
Остальное нафиг с пляжа.
(Добавление)
Вот попались рекомендации для другого движка
Цитата:
В случае с форумом PhpBB рекомендуется закрыть от индексации поисковиков всё кроме /viewforum.php и /viewtopic.php.
Создайте файл robots.txt и сохраните в нём следующий код.
User-agent: *
Disallow: /admin/
Disallow: /cache/
Disallow: /db/
Disallow: /images/
Disallow: /includes/
Disallow: /language/
Disallow: /templates/
Disallow: /extension.php
Disallow: /news.php
Disallow: /common.php
Disallow: /config.php
Disallow: /faq.php
Disallow: /friend.php
Disallow: /groupcp.php
Disallow: /login.php
Disallow: /memberlist.php
Disallow: /modcp.php
Disallow: /posting.php
Disallow: /privmsg.php
Disallow: /profile.php
Disallow: /search.php
Disallow: /viewonline.php
Disallow: /watched.php
Disallow: /index.php?c=
Создайте файл robots.txt и сохраните в нём следующий код.
User-agent: *
Disallow: /admin/
Disallow: /cache/
Disallow: /db/
Disallow: /images/
Disallow: /includes/
Disallow: /language/
Disallow: /templates/
Disallow: /extension.php
Disallow: /news.php
Disallow: /common.php
Disallow: /config.php
Disallow: /faq.php
Disallow: /friend.php
Disallow: /groupcp.php
Disallow: /login.php
Disallow: /memberlist.php
Disallow: /modcp.php
Disallow: /posting.php
Disallow: /privmsg.php
Disallow: /profile.php
Disallow: /search.php
Disallow: /viewonline.php
Disallow: /watched.php
Disallow: /index.php?c=
Думаю, что надо и по нашему движку написать "идеальный" вариант.
6. Леголегс - 13 марта 2010 — 22:23 - перейти к сообщению
nikk пишет:
Главная - это /Зачем закрывать главную страницу?
vipraskrutka пишет:
А. Ты имеешь ввиду, что спецсимволы * и $ нестандартны? Да, наверно надо отделить. User-agent: * лучше сделать попроще
alexx пишет:
Ты противоречишь сам себе. То предлагаешь "остальное" убрать, то приводишь вариант с закрытыми /cache/ и т.д. Я, кстати, служебные директории (например, templates) не вносил в список. Там и так пустые страницы видны. А можно даже чмоднуть их поособому, чтоб php их читать мог, а httpd напрямую - нет. Но это не на всех хостах получится.
Думаю, нужно оставить, то что относится к контекту форума.
Остальное нафиг с пляжа.
Остальное нафиг с пляжа.
7. Леголегс - 13 марта 2010 — 22:52 - перейти к сообщению
vipraskrutka пишет:
Не понял. Вылетала - в смысле показывалась или наоборот, исчезала?что все было так просто, я закрывал index.php - в яндексе вылетала морда /
vipraskrutka пишет:
Ясно. Я писал под яндекс, думал различия не сильно велики.ага, смотреть нужно спецификацию конкретных ботов
Вот что я в вебдеве ненавижу - так это ситуацию с всевозможными стандартами. Куда ни плюнь - либо стандарта нет вообще, либо его все нарушают, либо в стандарте три строчки и все лепят расширения. Хорошо, что мой доход от этой помойки не зависит.
8. - 13 марта 2010 — 22:53 - перейти к сообщению
CODE:
Disallow: /tools.php?action*
ИМХО, так лучше сделать, а не описывать все варианты. В другой ветке также приводил пример, что от Яндекса нужно спрятать аттачи к сообшениям и редирект, если мод соответствующий установлен.
9. Леголегс - 13 марта 2010 — 22:58 - перейти к сообщению
Zeg пишет:
В тулсах есть ценная инфа - хелпа, рулесы и список мемберов.
Disallow: /tools.php?action*
10. - 13 марта 2010 — 23:13 - перейти к сообщению
Леголегс, хелп и рулесы не такая уж ценная инфа, особенно учитывая, что она у 98% форумов одинаковая (типовая), что не есть гуд для искалок. А список юзеров и вовсе лучше закрыть от посторонних (незарегистрированных) глаз.
Еще вот так предлагаю:
Еще вот так предлагаю:
CODE:
Disallow: index.php?action=resetall
11. Леголегс - 13 марта 2010 — 23:22 - перейти к сообщению
Zeg пишет:
Ну я ж говорю, SEO не было целью. А на серьёзных форумах правила часто правятся. Но, в принципе наверно можно заблочить правила в роботс, а в коментах файла правил оставить пометку: если меняете этот файл, возможно, стоит разрешить его индексацию. хелп и рулесы не такая уж ценная инфа, особенно учитывая, что она у 98% форумов одинаковая (типовая), что не есть гуд для искалок.
Zeg пишет:
Почему? Вообще не понимаю этот геноцид незарегистрированных в рунете. Ссылки скрывают, картинки скрывают. Если в поиске мне попадается такой сайт - ctrl-w и всё. Регистрироваться ещё я должен, обойдутся.А список юзеров и вовсе лучше закрыть от посторонних (незарегистрированных) глаз.
Zeg пишет:
Ага, спасибо.
Disallow: index.php?action=resetall
12. - 14 марта 2010 — 00:48 - перейти к сообщению
Еще гугл страшно тупит, попав на страницу topic.php без параметров. И ошибка не выдается в хедер (точнее выдается, что всё ок - 200) и редирект назад не сработает (Пожалуйста, только корректным способом входите в скрипт!).
ИМХО, надо и это заткнуть:
ИМХО, надо и это заткнуть:
CODE:
Disallow: /topic.php$
13. Леголегс - 14 марта 2010 — 00:53 - перейти к сообщению
А как гугл туда попадает? Имхо, все возможные неправильные комбинации параметров предусмотреть невозможно и не нужно.
Кроме того, тут уже упоминалось, что с символом $ надо осторожнее.
Кроме того, тут уже упоминалось, что с символом $ надо осторожнее.
14. - 14 марта 2010 — 01:21 - перейти к сообщению
Леголегс пишет:
Кроме того, тут уже упоминалось, что с символом $ надо осторожнее.
Специально полистал доки, проблем с * и $ ни у Яндекса, ни у Гугла быть не должно, т.к. эти символы и там, и там описаны, как рекомендованные к применению. До остальных искалок как-то дела нет, но думаю дела там не хуже обстоят.
Как гугл попадает - хез, но попадает же...
(Добавление)
С Гугла:
Цитата:
Чтобы задать соответствие конечных символов URL-адреса, используйте символ $. Например, чтобы заблокировать доступ к URL, оканчивающемуся на .xls, используйте следующие строки:
CODE:
User-agent: Googlebot
Disallow: /*.xls$
Disallow: /*.xls$
С Яндекса:
Цитата:
Использование спецсимволов "*" и "$".
При указании путей директив Allow-Disallow можно использовать спецсимволы '*' и '$', задавая, таким образом, определенные регулярные выражения. Спецсимвол '*' означает любую (в том числе пустую) последовательность символов. Примеры:
Спецсимвол '$'.
По умолчанию к концу каждого правила, описанного в robots.txt, приписывается '*', например:
чтобы отменить '*' на конце правила, можно использовать спецсимвол '$', например:
При указании путей директив Allow-Disallow можно использовать спецсимволы '*' и '$', задавая, таким образом, определенные регулярные выражения. Спецсимвол '*' означает любую (в том числе пустую) последовательность символов. Примеры:
CODE:
User-agent: Yandex
Disallow: /cgi-bin/*.aspx # запрещает '/cgi-bin/example.aspx'
# и '/cgi-bin/private/test.aspx'
Disallow: /*private # запрещает не только '/private',
# но и '/cgi-bin/private'
Disallow: /cgi-bin/*.aspx # запрещает '/cgi-bin/example.aspx'
# и '/cgi-bin/private/test.aspx'
Disallow: /*private # запрещает не только '/private',
# но и '/cgi-bin/private'
Спецсимвол '$'.
По умолчанию к концу каждого правила, описанного в robots.txt, приписывается '*', например:
CODE:
User-agent: Yandex
Disallow: /cgi-bin* # блокирует доступ к страницам
# начинающимся с '/cgi-bin'
Disallow: /cgi-bin # то же самое
Disallow: /cgi-bin* # блокирует доступ к страницам
# начинающимся с '/cgi-bin'
Disallow: /cgi-bin # то же самое
чтобы отменить '*' на конце правила, можно использовать спецсимвол '$', например:
CODE:
User-agent: Yandex
Disallow: /example$ # запрещает '/example',
# но не запрещает '/example.html'
Disallow: /example$ # запрещает '/example',
# но не запрещает '/example.html'
CODE:
User-agent: Yandex
Disallow: /example # запрещает и '/example',
# и '/example.html'
Disallow: /example # запрещает и '/example',
# и '/example.html'
CODE:
User-agent: Yandex
Disallow: /example$ # запрещает только '/example'
Disallow: /example*$ # так же, как 'Disallow: /example'
#запрещает и /example.html и /example
Disallow: /example$ # запрещает только '/example'
Disallow: /example*$ # так же, как 'Disallow: /example'
#запрещает и /example.html и /example
15. - 31 марта 2010 — 21:58 - перейти к сообщению
Проанализировал статистику по 5 разным форумам и их индексации в Яндексе. На тех форумах, которые Яндекс не любит особо часто посещать и вдаваться в дебри вот эти строки не рекомендованы:
По логике - они верны, т.е. "отсекаются" дубли страниц, которые искалки серьезные (аля Гугл) не приветствуют. Т.е., к примеру,адреса мой.сайт/forums.php?forum=1&p=1 и мой.сайт/forums.php?forum=1 идентичны. И это плохо.
Но! Яндекс же не всегда поддаётся логике, поэтому, дальше страницы 1, т.е. с &p=1 он почему-то не идет, хотя на другие страницы явно есть ссылки (даже с той же первой страницы без &p=1). И эти страницы с параметром тоже в индекс не добавляет, т.к. они запрещены в robots-е. Почему так себя ведет Яндекс - понять нельзя.
Еще нужно добавить в robots.txt вот такую строку:
Яндекс на вложениях тоже иногда такую "дурь" выкидывает, страх.
А вот строку со ссылкой на "Рейтинг популярных тем":
я бы в robots.txt не писал. Наоборот с этой страницы масса ссылок на популярные и последние темы. Перелинковка здоровская!
зы. Раньше уже писал, нужно ссылки на последние сообщения форумов и подфорумов привести в "божеский" вид, т.е. они вот такие ваш.сайт/forum/topic.php?forum=ХХ&topic=Н&v=l#12345678 и, в соответствии с robots.txt, просто запрещены к индексации. Для тех, кто хочет это сделать самостоятельно, инструкиция под спойлером ниже.
CODE:
Disallow: /forums.php?forum=*&p=1$
Disallow: /tools.php?action=members&s=&order=ASC&p=1$
Disallow: /topic.php?forum=*&topic=*&p=1$
Disallow: /tools.php?action=members&s=&order=ASC&p=1$
Disallow: /topic.php?forum=*&topic=*&p=1$
По логике - они верны, т.е. "отсекаются" дубли страниц, которые искалки серьезные (аля Гугл) не приветствуют. Т.е., к примеру,адреса мой.сайт/forums.php?forum=1&p=1 и мой.сайт/forums.php?forum=1 идентичны. И это плохо.
Но! Яндекс же не всегда поддаётся логике, поэтому, дальше страницы 1, т.е. с &p=1 он почему-то не идет, хотя на другие страницы явно есть ссылки (даже с той же первой страницы без &p=1). И эти страницы с параметром тоже в индекс не добавляет, т.к. они запрещены в robots-е. Почему так себя ведет Яндекс - понять нельзя.
Немного оффтоп. Юра, есть смысл вообще на уровне движка избавится от дублей таких страниц, т.е. сразу при генерации на странице ссылок очень хорошо бы отбрасывать этот параметр (&p=1) за ненадобностью. Леголегс об этом писАл раньше.
Еще нужно добавить в robots.txt вот такую строку:
CODE:
Disallow: /forum/printfile.php?action=attach*
Яндекс на вложениях тоже иногда такую "дурь" выкидывает, страх.
А вот строку со ссылкой на "Рейтинг популярных тем":
CODE:
Disallow: /tools.php?action=threadstop
я бы в robots.txt не писал. Наоборот с этой страницы масса ссылок на популярные и последние темы. Перелинковка здоровская!
зы. Раньше уже писал, нужно ссылки на последние сообщения форумов и подфорумов привести в "божеский" вид, т.е. они вот такие ваш.сайт/forum/topic.php?forum=ХХ&topic=Н&v=l#12345678 и, в соответствии с robots.txt, просто запрещены к индексации. Для тех, кто хочет это сделать самостоятельно, инструкиция под спойлером ниже.
Инструкция (Отобразить)