Skip to main content
воздушно-пенные огнетушители

На некоторых сайтах принято использовать идентификатор сессии – то есть каждый посетитель при заходе на сайт получает уникальный параметр &session_id=, который добавляется к адресу каждой посещаемой страницы сайта.

Использование идентификатора сессии позволяет более удобно собирать статистику о поведении посетителей сайта и может использоваться для некоторых других целей.

Однако, с точки зрения поискового робота страница с новым адресом – это новая страница. При каждом заходе на сайт поисковый робот будет получать новый идентификатор сессии и, посещая те же самые страницы, что и раньше, будет воспринимать их как новые страницы сайта.

Строго говоря, поисковые системы имеют алгоритмы «склейки» зеркал и страниц с одинаковым содержанием, поэтому сайты, использующие идентификаторы сессий, все же будут проиндексированы. Однако, индексация таких сайтов затруднена и в некоторых случаях может пройти некорректно. Поэтому использование на сайте идентификаторов сессий не рекомендуется.

Вопрос по сессиям

То есть нужно совсем отказаться от функции session_start() в PHP, это надо стараться обходить или вообще отказаться и что именно будет обрабатываться некорректно?

Зачем отказываться? Хотите -

Зачем отказываться? Хотите - пользуйтесь. Просто имейте ввиду вышесказанное.

Для подробного понимания сути советую почитать книжку "Руководство разработчика по SEO. Поисковая оптимизация на PHP для профессионалов". Авторы: Джейми Сирович и Кристиан Дари.

Данная ситуация рассматривается там в главе 5 - "Дублированный контент", раздел - "Идентификаторы сеансов на основе URL".

Вот цитата:
Управление сеансами на основе URL создает серьезные проблемы для поисковых механизмов, т.к. при каждом просмотре такого Web-сайта поисковым агентом он получает различные идентификаторы сеанса и, следовательно, новый набор URL-адресов с тем же самым контентом. Понятно, что это приводит к огромным объемам дублированного контента. Средство РНР, которое автоматически отслеживает сеансы пользователей с помощью параметра в строке запроса, называется trans_sid. Можно отключить это средство и разрешить поддержку сеансов только с помощью cookie-данных.
Сеансы на основе URL могут быть важны для больших сайтов электронной коммерции и в ряде других случаев, т.к. отдельные пользователи отключают сохранение cookie-наборов в своих браузерах.

Далее предлагается отключение идентификаторов сеансов на основе URL с помощью файла .htaccess или с помощью РНР-кода.

Также в книжке разобраны случаи, что делать, если уже такие страницы проиндексированы и как использовать метод, использующий маскирование, который динамически отключает идентификаторы сеансов на основе URL для поисковых механизмов, нo оставляет их для "живых" пользователей и другие варианты, которые, могут быть пригодны для разных случаев.
Найдите и почитайте, если интересно.

А мой рецепт прост: юзать drupal, там все это SEO уже "в коробке" :)