Старый 11.04.2018, 08:26   #1
Новичок
 
Регистрация: 22.09.2008
Сообщений: 10
Вес репутации: 0
Semenich на пути к лучшему
По умолчанию Индексация дублирующихся страниц

Добрый день. В Сапе проиндексировались дубли страниц, теперь боюсь, что Гугл, Яндекс и прочие поисковики тоже могут дубли индексировать. Например:
Оригинальная страница - http://fmc.uz/word.php?iduz=11995
Дубль - http://fmc.uz/word.php/forum/word.php?iduz=11995

Это из-за того, что я в php анализирую только id (iduz=11995), а в середине, получается, что угодно можно подставить и всё равно откроется эта страница, но с другим URL.

Можете подсказать, как запретить индексировать дубли? Искал решение в поисковиках, но похожей проблемы не встретил.

В тех.поддержке Сапы порекомендовали просто исключить эти страницы из Сапы. А хотелось бы на будущее полностью запретить существование дублей.

Я не большой спец в php и htaccess, простой код использовал if($_GET['id']) { $id=$_GET['id']; };
Semenich вне форума   Ответить с цитированием
Старый 11.04.2018, 09:39   #2
Администратор
 
Аватар для Ank
 
Регистрация: 05.02.2007
Сообщений: 18,405
Вес репутации: 714
Ank - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущее
По умолчанию

Цитата:
Сообщение от Semenich Посмотреть сообщение
что я в php анализирую
не только id и будет щасье.

Цитата:
Сообщение от Semenich Посмотреть сообщение
Я не большой спец в php и htaccess
дать денег комунибудь, что бы настроили так, что не было бы дублей. И все неправильное возвращало бы 404
__________________
Начать зарабатывать на своих сайтах. Консультирую своих рефов по аське

Читаем ФАК
Ank вне форума   Ответить с цитированием
Старый 20.04.2018, 08:05   #3
Новичок
 
Регистрация: 22.09.2008
Сообщений: 10
Вес репутации: 0
Semenich на пути к лучшему
По умолчанию

Может одной строкой эта проблема решается. Неужели никто подсказать не может или ссылку на инструкцию?!

Добавлено через 11 минут
Еще раз поковырялся. Пока сделал так:
if ($_SERVER['PHP_SELF'] != $_SERVER['SCRIPT_NAME'] )
{
echo"<meta http-equiv=refresh content='0; URL=/404.html'>";exit();
}

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

Последний раз редактировалось Semenich; 20.04.2018 в 08:05. Причина: Добавлено сообщение
Semenich вне форума   Ответить с цитированием
Старый 20.04.2018, 14:19   #4
Мастер
 
Регистрация: 17.07.2012
Адрес: Москва
Сообщений: 815
Вес репутации: 194
qkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущееqkowlew - прекрасное будущее
По умолчанию

Цитата:
Сообщение от Semenich Посмотреть сообщение
Может одной строкой эта проблема решается. Неужели никто подсказать не может или ссылку на инструкцию?!

Добавлено через 11 минут
Еще раз поковырялся. Пока сделал так:
if ($_SERVER['PHP_SELF'] != $_SERVER['SCRIPT_NAME'] )
{
echo"<meta http-equiv=refresh content='0; URL=/404.html'>";exit();
}

Вроде работает в данном конкретном случае, но в других случаях не уверен.
Нет, это не лучшее решение. Вместо строки
echo"<meta http-equiv=refresh content='0; URL=/404.html'>";

лучше написать:
header('HTTP/1.0 404 not found');

Добавлено через 9 минут
Но вообще-то у вас изначально проблема в том, а "кто формирует вам ссылки-дубли" - ведь их формирует в html коде страниц сам движок.

Наиболее вероятная ошибка у вас - это то, что в коде стоит:


<a href="<?php echo "?iduz=$id" ; ?>">ссылка на материал <?php echo "$id"; ?></a>

Из чего в HTML получается относительная ссылка:
<a href="?iduz=11995">ссылка на материал 11995</a>

То есть на странице / ссылка будет на "настоящую" /?iduz=11995
а на странице /forum этот же код html породит "дубль" /forum/?iduz=11995

В случае описанной мной ошибки надо просто добавить один слеш (выделен полужирным) в php код:
<a href="/<?php echo "?iduz=$id" ; ?>">ссылка на материал <?php echo "$id"; ?></a>

Последний раз редактировалось qkowlew; 20.04.2018 в 14:19. Причина: Добавлено сообщение
qkowlew вне форума   Ответить с цитированием
Старый 02.05.2018, 03:47   #5
Новичок
 
Регистрация: 22.09.2008
Сообщений: 10
Вес репутации: 0
Semenich на пути к лучшему
По умолчанию

Спасибо за помощь, попробую так сделать.
Semenich вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
на выходных много дублирующихся заданий sezarius78 PR.Sape 20 06.06.2011 12:12
Индексация страниц artoff Яндекс 7 12.08.2010 20:55
Индексация страниц Solven Вопросы по работе системы 4 06.02.2010 20:55
индексация страниц иван николаев Google, MSN, Yahoo 4 09.12.2009 20:53
Индексация страниц Nokeymus Вопросы по работе системы 11 01.03.2009 00:11


Часовой пояс GMT +3, время: 13:57.