Офис НП AMWAY в Ярославле
Офис Амвей в Ярославле
На карте Офис AMWAY в ЯрославлеПрием и выдача заказов, презентация продукции Амвей, мастер–классы, вопросы по бизнесу Amway:
Адрес: улица Валентины Терешковой, дом 1 (Вход со двора)
Телефон: +7 (920) 112-00-91
Email: matyxho@mail.ru
Сайт: https://www.amway.ru/user/lebedem
Визитка: http://yar.meweb.ru
Иерархия статей
Статьи » Программирование » Боремся с дублями страниц после установки ЧПУ
Сниппет
После установки ЧПУ весьма часто остается проблема: дубли страниц- с ЧПУ и без, а поисковые системы это очень не любят. Попробуем решить эту проблему.
Боремся с дублями страниц после установки ЧПУ
Опубликовал  Pisatel Добавлено  17-09-2013 11:17 17 Сентябрь 2013 11:17:32 4533  Прочтений 4533 Прочтений  4 Комментариев 4 Комментариев
 printer
После установки ЧПУ весьма часто остается проблема: дубли страниц- с ЧПУ и без, а поисковые системы это очень не любят. Попробуем решить эту проблему.
Как нам это сделать, не потеряв пузомерки и сохранив позиции в выдаче? Все верно- 301 редирект нам в помощь. Итак, попробую на простом примере показать, как сделать этот самый редирект.
Например, раньше наши статьи были доступны по адресу сайт.ru/articles.php?article_id=5, но после установки ЧПУ адрес страниц стал иметь вид сайт.ru/article5-zdes-titl-translitom. Итак, мы получили дубль, так как статья будет доступна по обоим адресам. Что ж, ищем и редиректим. Не забываем, что редирект можно осуществить только ДО вывода любого контента в браузер, то есть до первого echo, иначе мы получим ошибку. Следовательно, проверку осуществяйте до вывода заголовков.
Итак, смотрим пример:
Код: PHP
  function redirection($location) {
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".str_replace("&", "&", $location));
exit;
}
//^ функция, дабы отдавать заголовок 301 редиректа

function mytext($text)
{

//здесь функция транслита, которую вы используете, она может называться как угодно
}

if (preg_match("/\/articles\.php\?article_id=([0-9]+)/i", $_SERVER['REQUEST_URI'], $matches)){
//^ищем совпадения в урле, если найдены- перенаправляем
$result = mysql_query("SELECT article_title FROM articles WHERE article_id=".(is_int($matches[1]) ? $matches[1] : 0)." LIMIT 1");
//^берем заголовок статьи, который используем для чпу
if (mysql_num_rows($result) > 0){
$data = mysql_fetch_assoc($result);
redirection("http://".$_SERVER['HTTP_HOST']."/article".$matches[1]."-".mytext($data['article_title'])."");
}
}



Надеюсь, заменить значения ты сможешь сам, я лишь показываю примерный план работы. Всего доброго!
Понравилась статья?
Метки для данной статьи
Похожие статьи
Заголовок
Категория
Просмотров
Поделиться:   
Комментарии
#1 | alex 28 мая 2014 18:58:46
No Avatar
Гость
Спасибо за статью! Отличный сайт!
Avatar
Отсутствует
Супер Администратор
Активный
С 03. февраля 2013
Всегда пожалуйста. Будут вопросы- задавайте.
Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
#3 | master 10 июня 2014 20:36:53
No Avatar
Гость
о! то что нужно! спс
Avatar
Отсутствует
Супер Администратор
Активный
С 03. февраля 2013
Очень смешно
Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
Добавить комментарий
Имя:

Проверочный код:
Последние активные темы форума
  Темы Просмотров Ответов Последние сообщения
folder Вопрос по переделке bb-кода
PHP, MySQL
1563 5 Pisatel
26. мая 2017
folder Вопросы по Ajax форме обратной связи
CMS PHP Fusion
7454 48 Ditrin
19. февраля 2017
folder BBCode YouTube Video Colorbox mod
CMS PHP Fusion
6466 2 Pisatel
10. декабря 2016
folder Как лучше создать собственную страницу?
CMS PHP Fusion
4584 17 Pisatel
11. мая 2016
folder Небольшие вопросы по скриптам магазина и катало...
PHP, MySQL
41715 80 Pisatel
11. января 2016
folder BBCode Code mod
CMS PHP Fusion
3072 0 Pisatel
31. августа 2015
folder Ajax Like Dislike Article Panel
CMS PHP Fusion
5883 16 Pisatel
07. июля 2015
folder Хлебные крошки / BreadCrumbs SEO Panel
CMS PHP Fusion
6493 17 Pisatel
04. июля 2015
folder Abbr Description BBCode
CMS PHP Fusion
2290 0 Pisatel
15. июня 2015
folder Плагин Email рассылки Mail To All by Pisatel
CMS PHP Fusion
9151 32 Pisatel
26. апреля 2015
folder Подозрительный трафик и прочие страшилки
Всякая хрень
3942 2 Ditrin
23. апреля 2015
folder Мод Newsletter - рассылка писем пользователям с...
CMS PHP Fusion
5626 13 Pisatel
10. апреля 2015
folder Мод отправки писем PHPMailer для PHP-Fusion
CMS PHP Fusion
28353 113 Ditrin
06. апреля 2015
folder Появление неизвестного файла subscriptions.php
CMS PHP Fusion
2784 2 Pisatel
06. апреля 2015
folder Autoban on IP
CMS PHP Fusion
11397 13 Pisatel
03. апреля 2015