2 способа убрать сессии из форума phpbb3
Для того что бы показывать для различных пользователей различную информацию на форуме используется идентификатор сессии или по другому SID. Простой пример: для гостей показывается ссылка “Войти”, а для вошедших на форум под зарегистрированным пользователем показываются ссылки на личный кабинет, дополнительные функции и конечно же “Выйти”.
Выглядит он следующим образом:
http://www.ваш-домен.com/phpBB3/index.php?sid=fa6bf5b0b4d8d504e55241b0bc6e
Откройте ваш форум в любимом браузере (не регистрируясь в форуме!) и посмотрите на адресную строку.
Если на вашем форуме в строке браузера видна выделенная часть – значит она видна всем гостям, а самое главное поисковым ботам. Нужно это исправлять, иначе вы не добьетесь хороших результатов в индексации вашего форума.
Способ №1. Добавляем поисковых ботов
Заходим на свой phpBB3 форум под учетной записью с правами администратора, после успешного входа ищем внизу страницы ссылку “Администраторский раздел”, вводим логин/пароль повторно. Жмем вкладку “СИСТЕМА”, в левой части меню ищем раздел “Поисковые боты”. Перед вами список всех поисковых ботов известных вашему форуму.
Этот список служит для того что бы отключать SID именно для этих ботов и решить проблему индексации. Проверьте есть ли в этом списке основные роботы. В моем форуме не было роботов Yandex, Rambler, Mail.ru.
В приведенной ниже таблице перечислены основные поисковые боты.
Поисковик | User-agent | |
---|---|---|
Googlebot | ||
Yahoo! | Slurp Yahoo! Slurp |
|
AOL | Slurp | |
MSN | MSNBot | |
Live | MSNBot | |
Ask | Teoma | |
AltaVista | Scooter | |
Alexa | ia_archiver | |
Lycos | Lycos | |
Яндекс | Yandex | |
Рамблер | StackRambler | |
Мэйл.ру | Mail.Ru | |
Aport | Aport | |
Вебальта | WebAlta WebAlta Crawler/2.0 |
Недостающие роботы добавляем через кнопку “Добавить бота”. Название бота можете вписать как хотите, а вот Соответствие агенту (User-Agent) должно содержать соответствующее служебное имя бота (второй столбец предыдущей таблицы). На рисунке ниже показано как заполнять для поисковых ботов Яндекса.
В идеале, нужно добавить всех существующих роботов, но можем кого то пропустить или поисковый сервис сменит значение “User-Agent” для своего робота и тогда он не будет распознан форумом, хотя последее, наврятли. Расширенный и обновляемый список известных мне поисковых ботов. Для таких случаев нужно удалить из URL идентификатор сессии для всех кто не вошел на сайт как зарегистрированный пользователь. По умолчанию для гостей SID тоже показывается.
Способ №2. Добавление кода PHP в движок форума
Убрать гостевые сессии поможет следующие действия:
Находим файл includes/functions.php
. В нем находим следующий код
1 2 3 4 5 |
// Assign sid if session id is not specified if ($session_id === false) { $session_id = $_SID; } |
После него добавляем этот код
1 2 3 4 5 6 7 |
// Begin SEO phpBB global $user; if ($user->data['user_id'] == ANONYMOUS OR $user->data['is_bot'] ) { $session_id = false; } // End SEO phpBB |
После того как в мой форум избавился от идентификатора сессий (Session ID), Яндекс заметно лучше стал индексировать мой сайт и это естественно повлияло на позиции в выдаче.
Для удаления из индекса Яндекс страниц с идентификатором существует 3-й способ, описанный в статье «Улучшаем индексацию Яндексом. Проблема идентификатора сессий».
спасибо оч оч помогло просто супер))
В статье описаны далеко не все этапы борьбы с SID. Если форум уже проиндексирован, нужно поисковикам помочь в удалении из индекса страниц с идентификатором. В общем будет 2-я серия…
Грамотно! нечего не скажешь! Просто гуру!
Все работает, спасибо! Только кроме страницы регистрации в способе №2 (капча не показывалась). Пришлось добавить дополнительное условие:
if (strpos($url, '/ucp.php') === false)
перед основным условием. Некрасиво, но работает
После вставки вашей строки капча работает?
И почему некрасиво?
Со второй версией к сожалению не общался.
Нашел исчерпывающую инфу по phpbb2.
http://www.streamliner.ru/articles.php?article_id=13
Согласно статье отредактируйте sessions.php и вычистите индекс для Яндекса с помощью директивы в robots.txt.
Для гугла сделайте настройки в соответствии с моей статьей
http://dserg.ru/google-identifikator-sessijj-sid/
Спасибо, очень полезно!
Автору статьи спасибо, но существует проблема у второго способа. В комментариях упоминается проблема по отображению capcha,даже если я её отключаю, то есть разрешаю регистрацию без визуального подтверждения, всегда выходит ошибка отправка формы, времени потерял уйму, но убедился, что проблема именно в вышеупомянутом способе избавления от сессий. phpBB3 3.0.4 Дополнительное условие прописывать не пробовал ещё, сил нет уже воевать с ним.