- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Всем привет!
Возникла такая проблема: в панели вебмастера яндекса обнаружил дубли такого вида:
http://site.ru/category/page,1,2,895-name.html
Глюк присутствует на всех версиях DLE но по разному отображается, у меня версия старенькая DLE 7.5, правда обновлялась PHP вставками регулярно.
Хотелось бы получить правильный редирект: http://site.ru/category/895-name.html
На блоге Алаева есть решение, но оно также не работает полноценно. Выглядит оно так:
Найти:
Открываем файл /engine/modules/show.full.php
НАХОДИМ:
} else {
$full_link = $config['http_home_url'] . "index.php?newsid=" . $row['id'];
$print_link = $config['http_home_url'] . "engine/print.php?newsid=" . $row['id'];
$short_link = "";
}
Добавить:
ВЫШЕ ДОБАВЛЯЕМ:
//обработка неправильного alt-name и 301 редирект
$true_link = $config['http_home_url'] . substr ($_SERVER['REQUEST_URI'], 1);
if ($row['allow_comm']) { //если разрешены комменты
$conf_comm_by_page = intval( $config['comm_nummers'] ); // комм на стр из настроек
$news_comm_num = $row['comm_num']; // общее кол-во комм
$comm_page_count = @ceil( $news_comm_num / $conf_comm_by_page );
if ( ($comm_page_count >= 2) && (intval($_REQUEST['cstart']) >= 2) ) $full_link = $link_page . intval($_REQUEST['cstart']) . "," . $news_name . ".html";
}
if ($news_page >= 2) $full_link = $link_page . $news_name . ".html";
if ($true_link != $full_link) {
header('HTTP/1.1 301 Moved Permanently');
header ('Location: ' . $full_link);
die();
}
//обработка неправильного alt-name и 301 редирект
Данный метод не удаляет вышеуказанный мною дубль и подобные ему. Так как в моем случае есть еще и директория, а также несколько страниц комментариев к данной новости. Помогите решить проблему. За ранее, спасибо!
А почему не обновится к актуальной версии?
А почему не обновится к актуальной версии?
Нереально, много уже установлено модулей приватных, дописано и внесено множество PHP вставок, не получится... Да и рашение будет полезно всем у кого старые версии и новые, так как подобный Баг есть даже в самых последних версиях скрипта DLE.
А генерацией htaccess'a с соответствующими редиректами (можно на автомате) не пробовали решить задачу? Раз много модулей написано, чего вам стоит еще один за 30$ заказать?
А генерацией htaccess'a с соответствующими редиректами (можно на автомате) не пробовали решить задачу? Раз много модулей написано, чего вам стоит еще один за 30$ заказать?
Пробовал, не получается, может не правильно прописывал регулярные выражение, хотелось бы получить ответ у знающих. Если бы я хотел модуль заказать, то я бы давно уже купил решение и не создавал данную тему.
Данное решение также не актуально: без использования "!" - циклическая переадресация!
$true_link = $config['http_home_url'] . substr ($_SERVER['REQUEST_URI'], 1);
if (intval($_REQUEST['cstart']) >= 2) {
$comments_link = $link_page . intval($_REQUEST['cstart']) . "," . $row['alt_name'] . ".html";
}
if (($true_link == $full_link) and ($true_link == $comments_link)) {
} else {
header('HTTP/1.1 301 Moved Permanently');
header ('Location: ' . $full_link);
die();
}
Disallow: */page,
и все дела. Редирект только убьет функционал, если эти комментарии действительно существуют.
Disallow: */page,
и все дела. Редирект только убьет функционал, если эти комментарии действительно существуют.
Вы только исключите данную страницу из индекса, но по сути статический вес на все страницы данного типа (дубли) будет передаваться нашим сайтом, что для SEO очень плохо, редирект бы перекидывал весь вес на нужную страницу с этого дубля - этого и хочется добиться.
Вы только исключите данную страницу из индекса, но по сути статический вес на все страницы данного типа (дубли) будет передаваться нашим сайтом, что для SEO очень плохо, редирект бы перекидывал весь вес на нужную страницу с этого дубля - этого и хочется добиться.
Кто сказал что он будет передаваться? Откуда он будет передаваться? У вас там "до фига" веса?
Ставьте тогда редирект в htaccess - это очень легко сделать, и уберите из кода ссылки на коментарии, вам в таком они случае не понадобиться. И не будут никаких ссылок в вебмастере.
Кто сказал что он будет передаваться? Откуда он будет передаваться? У вас там "до фига" веса?
Ставьте тогда редирект в htaccess - это очень легко сделать, и уберите из кода ссылки на коментарии, вам в таком они случае не понадобиться. И не будут никаких ссылок в вебмастере.
Как откуда он будет передаваться? С категории будет передаваться, а на категорию с главной, - это же дубль основной новости. Редирект и хочу сделать, не могу понять какие прописать правила, Вы знаете? Подскажите, буду благодарен.
Как откуда он будет передаваться? С категории будет передаваться, а на категорию с главной, - это же дубль основной новости.
На сколько я знаю ссылкам запрещенным к индексации "вес" не передается... Или передается? Уберите ссылки из кода, зачем вы их там держите если не пользуетесь этим функционалом а "вес" важнее.
Редирект и хочу сделать, не могу понять какие прописать правила, Вы знаете? Подскажите, буду благодарен.
После RewriteBase добавить
RewriteRule (^|.+?/)page,[\d,]+,(\d+-.+)$ /$1$2 [R=301,L]
На сколько я знаю ссылкам запрещенным к индексации "вес" не передается... Или передается? Уберите ссылки из кода, зачем вы их там держите если не пользуетесь этим функционалом а "вес" важнее.
По запрещенным к индексации страницам все равно ходит гуглбот, и атрибут nofollow Вас также не спасет, так как он не передаст вес на ссылку акцептор, но украдет в "никуда" вес с ссылки донора.
О каких ссылках Вы говорите?? из какого кода убрать? Конкретней, пожалуйста.
---------- Добавлено 15.06.2013 в 19:04 ----------
После RewriteBase добавить
RewriteRule (^|.+?/)page,[\d,]+,(\d+-.+)$ /$1$2 [R=301,L]
Попробовал, не работает, с дубля не перекидывает на основную новость.