Яндекс полюби мой ЧПУ

РТ
На сайте с 02.08.2011
Offline
39
800

И снова ЧПУ. Не гневитесь раньше срока, я знаю, что тем про ЧПУ предостаточно, но той детальки, которую хочу обсудить, я в них не нашёл. А также было бы неплохо обобщить всю информацию, поэтому прошу не только уделять внимание моему вопросу, но и дополнять тему информацией по поводу любви и способов приворотов поисковиков к ЧПУ. А если что-то не так - поправляйте, будем редактировать.

В частности хочу обсудить для Joomla, а в общем и для других CMS.

Давайте разберёмся для чего нам нужен ЧПУ? Для человеков - это конечно, но как показывает спрос на ЧПУ, продать его хотят по большей части поисковым роботам. А здесь порой возникают сложности.

Включаем ЧПУ. В джумле 1.5 (кстати, что по другим версиям?) стандартный ЧПУ включается в настройках "включить seo" (при этом не забываем включать mod_rewrite там же, с заменой "htacces.txt" на ".htacces") и имеет следующий вид "сайт.ру/страница" либо "сайт.ру/раздел" и т.п.. Но со стандартным ЧПУ возникает ряд проблем - это непроизвольное дублирование страниц для робота поисковых систем (будем говорить Яндекс). Выглядит это например так "сайт.ру/страница" отдаёт тот же контент, что и "сайт.ру/страница/". (примеры также можете приводить в постах). В связи с чем Яндекс не любит наш сайт и вобще считает, что мы его может даже обмануть хотим. Некоторые даже фильтрами пугают за эти дубли.

Многие для избежания этой проблемы советуют использовать сторонние компоненты формирования ЧПУ (в частности Artigo). Вроде бы это решает проблему, но возникает проблема иная, artigo запрашивает для каждой ссылки информацию из базы (судя по публичной информации). Т.е. если у вас на странице 100 ссылок - то соответсвено 100 запросов к базе (поправьте если не так). В любом случае большое увеличение кол-ва запросов к базе, не есть хорошо, ибо виртуальные серверы (коими и пользуется большинство веберов) стонут от Joomla сайтов с Артиго и сколько нибудь приемлимым посещением.

Возвращаемся к стандартному ЧПУ и дублям страниц в Яндексе.

Что же делать? Лопатил интернеты. Налопатил такой момент как "canonical URL" и Яндекс вот на этой странице (крутите страницу до конца) нам как бэ намекает, что если у вас получаются дубликаты страниц, то в мете можно указать верный URL - и имено он будет индексироваться (и в базе Яндекса не будет дублей).

Вопрос - как указать для всех страниц верный каноникал УРЛ?

Есть ли такие компоненты? (я не нашёл)

И если нет, то предлагаю написать компонент (я буду писать), используя советы Гуру Joomla (ибо я в нем не гуру). Потом выложим в паблик доступ. Преимущества перед Артиго (если я не пропустил овраги на бумаге) очевидны, мы не формируем ссылки из базы, а только говорим Яндексу какая страница верная уже на самой странице (при необходимости ну +1 запрос к базе, и то думаю не потребуется).

Вобщем сливаем всю инфу по проблемам ЧПУ+поисковик в эту тему. Первый пост буду редактировать на основании ваших постов. А также уделите внимание моему вопросу и предложению по написанию правильных каноникал урл.

webeditor
На сайте с 12.12.2010
Offline
108
#1

Можно было уместить все в 2 предложения.

P.S. robots.txt юзайте.

Куплю любой ваш сайт (https://goo.gl/bFFa4p) Без сомнения лучший недорогой хостинг (https://goo.gl/QaAKmT)
РТ
На сайте с 02.08.2011
Offline
39
#2

webeditor,

В два предложения специально не писал, чтобы и те, кто с проблемой столкнулся впервые и ещё не просмотрели кучи тем и прочего материала, тоже что-то могли понять.

По поводу robots.txt (новичкам сюда), а как там запретить исключительно последний слэш "/", регулярками? Пробовали, получалось? Если да - написали бы более развёрнуто сюда, людям почитать полезно было бы. Минусы есть какие нибудь? И это же не единственная проблема, различные компоненты по разному могут выводить урл одной и той же статьи. Мне кажется тяжело будет прописать универсальное правило для robots.txt. Какие у вас решения есть, напишите более подробно. Потом составим вменяемую статью по всей этой теме и в первый пост поставим.

T
На сайте с 20.03.2007
Offline
67
Toy
#3

Перманентный редирект со страницы без слеша на страницу со слешем. Не знаю как в ваших этих апачах, но в nginx делается пятью строками:

location ~ ^(.*[^/])$ {
if (!-f $request_filename) {
rewrite ^(.*)$ $1/ permanent;
}
}

Работать будет везде, и пофиг какая у вас cms.

РТ
На сайте с 02.08.2011
Offline
39
#4
Toy:
Перманентный редирект со страницы без слеша на страницу со слешем. Не знаю как в ваших этих апачах, но в nginx делается пятью строками. Работать будет везде, и пофиг какая у вас cms.

В апачах это называется 301 редирект, работать будет, но вот отношение к нему Яндекса сомнительное и не однозначное.

С одной стороны он говорит как это сделать


У меня стоит перенаправление со страниц a.ru/page на a.ru/page/. Какое перенаправление нужно выбрать, чтобы на поисковой выдаче находились страницы вида a.ru/page/?

Нужно установить 301 перенаправление со страниц a.ru/page на страницы a.ru/page/

Это отсюда, в самом конце.

С другой стороны:


Распространённые ошибки
Избыточное автоматическое перенаправление (редиректы). По возможности избегайте использования редиректов. Редирект может быть полезен только в том случае, если адреса страниц меняются по техническим причинам и необходимо перенаправить пользователя на новый адрес страницы.

Это отсюда.

Вот и как толковать?

C
На сайте с 28.01.2010
Offline
70
#5
Руслан Т:

По поводу robots.txt (новичкам сюда), а как там запретить исключительно последний слэш "/", регулярками? Пробовали, получалось? Если да - написали бы более развёрнуто сюда, людям почитать полезно было бы.

А в чем проблема?

Disallow: */$

Это - личная подпись. Здесь обычно ставят ссылки на всякие кривые сайты, надеясь получить "жирный бек".
РТ
На сайте с 02.08.2011
Offline
39
#6
Counselor:

Disallow: */$

Да, верно. Так будет убираться последний слеш.

Мало того, как выяснилось, если ещё проставлять суфикс через настройки, допустим html. То можно задать примерно такое правило.

Allow: *.html$

Allow: *.php$
Disallow: /

Запретить всё, кроме того, что оканчивается суфиксом присваеваемым jooml'ой, ну и чтобы index.php индексировался.

А для полного счастья прописать ещё xml сайтмапы и поставить какой-нибудь компонент, который будет в авто режиме xml сайтмапу делать.

Хм.. Дутая проблемка на поверку оказалась. А чего столько стонов тогда по всему интернету по поводу Jooml'ы с ЧПУ ? =)

------------//---------------

Правда надо ещё запретить вот такой момент

Disallow: */.html$

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