Поисковые роботы не видят контент на сайте

12
D
На сайте с 04.03.2007
Offline
113
1416

Может кто сталкивался - такая проблема. Есть сайт. С некоторых пор стал очень плохо индексироваться, при проверке сайта различными сервисами, которые показывают сайт глазами поискового работа оказалось что возвращается следующий контент

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
(function() {
var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');

xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.responseText == 1) {
var date = new Date();
date.setTime(date.getTime() + 2000);
document.cookie = 'referrer=' + encodeURIComponent(document.referrer) + '; expires=' + date.toGMTString();
window.location = window.location.href;
}
};

var url = location.protocol + '//' + location.hostname + '/index007.php';
var data = 'ua=' + encodeURIComponent(navigator.userAgent) + '&sec=' + encodeURIComponent('secret22key') + '&rnd=' + Math.random();

xhr.open('POST', url, true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.send(data);
})();
</script>
</head>
<body></body>
</html>

Подскажите что это может быть? Страницы работают нормально, в браузере текст отображается.

Slavietto
На сайте с 28.06.2009
Offline
76
#1

ТС, а Вы include или require не используете на сайте?

D
На сайте с 04.03.2007
Offline
113
#2
Slavietto:
ТС, а Вы include или require не используете на сайте?

Сайт писал, не я, но судя по коду, используются


<? include('./incl/top_menu.php'); ?>

и т.д.

babnicks
На сайте с 23.10.2009
Offline
47
#3
dmsoh:

Подскажите что это может быть? Страницы работают нормально, в браузере текст отображается.

Что это такое понятно, это JS код, который делает POST запрос к файлу index007.php (скорее всего вместо index007.php подставляется любой текущий URL) и таким образом прячет все содержимое сайта от роботов, которые не умеют выполнять JS код :)

Скорее всего Вы установили какой-нить плагин к CMS и он сделал Вам такую милость ;) Защитил Ваш сайт от роботов ;)

Или Вы сами галочку где-то не ту включили ;) типа "защита от кражи"

При этом хитрость данного подхода заключается в том, что в браузере Вы будете видеть обычные URL'ы, но на самом деле они получены не GET'ами а POST'ами :)

Попробуйте обновить страницу в браузере FF, скорее всего он Вам скажет "отправить повторно данные?" :)

На самом деле зачетный метод защиты от всяких дурно-парсеров контента, ну если у них, конечно, нет цели, в виде именно Вашего сайта.

100% защита от спам-ботов (https://www.keycaptcha.com)
D
На сайте с 04.03.2007
Offline
113
#4
babnicks:
Что это такое понятно, это JS код который делает POST запрос к файлу index007.php и таким образом
прячет все содержимое сайта от роботов, которые не умеют выполнять JS код :)

Скорее всего Вы установили какой-нить плагин к CMS и он сделал Вам такую милость ;)

Защитил Ваш сайт от роботов ;)

На сайте такого файла нет.

FF - Firefox имелось ввиду? обновил, данные повторно не предлагает отправить.

babnicks
На сайте с 23.10.2009
Offline
47
#5
dmsoh:
На сайте такого файла нет.

FF - Firefox имелось ввиду? обновил, данные повторно не предлагает отправить.

Тогда скорее всего это вариант "недоделанной" защиты :) Если Вы сайт не сами делали.

Спросите у того, кто делал, или ищите поиском по файлам например "secret22key"

Найдете или кусок кода, который этот JS выводит или кусок кода, который его проверяет.

Ну что это такое и для чего нужно, я Вам объяснил, это 100% защита от парсенья. Откуда она взялась, Вам лучше знать.

Возможно кто-то "умный" поставил данный код на условие по User-Agent'у

Slavietto
На сайте с 28.06.2009
Offline
76
#6

Но с другой стороны, если Вы видите контент на стр., а ПС нет, значит дело не в include.

D
На сайте с 04.03.2007
Offline
113
#7

Поискал по secret22key ничего не нашлось. Может это хостер чудит?

babnicks
На сайте с 23.10.2009
Offline
47
#8

Для того чтобы все проверить и изобразить из себя поискового робота наберите в FF в адресной строке about:config

после этого добавьте опцию general.useragent.override c значением например

"Yandex/1.01.001 (compatible; Win16; I)" или "Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)"

и вы "прикинитесь яндекс-ботом" ;) на всякий случай перезагрузите FF после этого.

Чтобы вернуть все "взад" удалите эту опцию.

D
На сайте с 04.03.2007
Offline
113
#9

Оказывается это хостер включил защиту - на сервер шла ДДОС атака.

Slavietto, babnicks спасибо за участие.

babnicks
На сайте с 23.10.2009
Offline
47
#10
dmsoh:
Оказывается это хостер включил защиту - на сервер шла ДДОС атака.
Slavietto, babnicks спасибо за участие.

:) ну да, вобщем-то и как ддос защита такой способ анти-парсенья иногда может сгодится...

А что он ее включил и забыл выключить? :) Если Вы жалуетесь на то, что с поисковиков пропадать начали?

12

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