Как известно, поисковики легко обнаруживают все «продажные» ссылки на любом сайте и если таких ссылок много, этому сайту прямая дорога в баню, то бишь, в бан.
Осознав сей прискорбный факт, я озаботилась тем, как спрятать «продажные» ссылки от Яндекса.
Решение нашлось на блоге http://venality.name/safe.htm.
Автор предложил способ защиты ссылок для сайтов на движке LastoBlog и LastoSplo при помощи простого дополнения к коду сапы.
Поскольку мои сайты работают на WordPresse, код пришлось немного переделать. Для WordPressa он выглядит так:
<?php
global $sape;
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'ваш секретный код');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape_venality_name.php');
$sape_venality_name['charset']='UTF-8';
$o['host'] = 'имя сайта без http:// и слеша в конце';
$sape = new SAPE_client($sape_venality_name);
unset($o);
?>Кроме вызова скрипта перед запуском файла с кодом Сапы:
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape_venality_name.php'); $sape = new SAPE_client($sape_venality_name);
здесь добавлена кодировка UTF-8:
$sape_venality_name['charset']='UTF-8';
и указан хост, на случай проблем с отображением ссылок:
$o['host'] = 'имя сайта без http://';
Итак, ход действий следующий:
- Создаем файл с именем sape_venality_name.php.
- Прописываем в нем этот код:
- Кладем этот файл в папку Caпы.
- В файл header.php между тегами
</head> и <body>
вставляем следующий код:
- Сохраняемся.
<?php
$sape_venality_name=array();
# Документы, работающие с глобалом GET:
$allowed_pages=array("key.php","ping","remoute");
# Разрешённые переменные в УРле иных документов:
$allowed_var=array("");
$tm=explode("?",$_SERVER['REQUEST_URI']);
if (isset($tm[1]) and $tm[0]==str_replace($allowed_pages,"",$tm[0])) {
$k=preg_match_all("/(.*)=(.*)\&/Uis",$tm[1]."&",$am);
$bm=array();
for ($i=0; $i < $k; $i++) {
if ($am[2][$i]=="" or !in_array($am[1][$i],$allowed_var))continue;
$bm[]=$am[1][$i]."=".$am[2][$i];
}
$tm[1]=implode("&",$bm);
$sape_venality_name['request_uri']=
$_SERVER['REQUEST_URI']=($tm[1]=="") ? $tm[0]: implode("?",$tm);
}
?><?php
global $sape;
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'ваш секретный код');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape_venality_name.php');
$sape_venality_name['charset']='UTF-8';
$o['host'] = 'имя сайта без http:// и слеша в конце';
$sape = new SAPE_client($sape_venality_name);
unset($o);
?>Поскольку с сайта http://pr-cy.ru, на котором ранее был детектор продажных ссылок, сейчас его убрали, проверить, как работает код теперь, к сожалению, можно только опытным путем - т.е. по реакции на ваш сайт поисковой системы.
Если сайт во всех других отношениях белый и пушистый, то реакция Яндекса должна быть положительной.
P.S. Для сообразительных:
Если у вас не работает приведенный выше код, возможно вы допустили ошибку при его копировании. В таком случае скачайте файл с кодом по ссылке ниже.
P.P.S. Для самых сообразительных:
В этом посте я рассказываю только о том, как защитить свой сайт от обнаружения на нем "продажных" ссылок. Как установить код Sape на сайт описано здесь.













не получилось ошибки повылазили
Убери пробелы в коде < ?php.
Я поставила их потому, что без них код не отображается на странице. А при вставке в файл их нужно убрать.
Помогите пожалуйста, у меня появилась ошибка, как ее исправить? Ошибка указывает на эту строку:
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
А это сама ошибка:
Warning: require_once(/home/*****//sape.php) [function.require-once]: failed to open stream: No such file or directory in /home/*****/header.php on line 29
Fatal error: require_once() [function.require]: Failed opening required '/home/*****//sape.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/*****/header.php on line 29
1. Игорь, уберите пробел < ?php и проверьте, где у вас находится папка sape - должна лежать в корне сайта.
2. Установите права 777 на эту папку.
Пробел убрал, папка sape находится в корне сайта, права на папку установил правильно, но ошибка все равно осталась. Незнаю что делать, уже все перепробовал.
Это может быть связано с темой. Мне как то попалась одна странная тема, на которой невозможно было установить этот код. Я поменяла тему и все нормально установилось - больше ничего не смогу предложить, не видя вашей файлов вашей темы.
Спасибо большое, попробую разобраться...
Кто пробовал, работает ли данная фишка?
Вот здесь подтверждают, что указанный код проверили и это работает.
Спасибо автору за ссылку на мой сайт.
Хотелось бы только знать, что это за "некоторые важные детали без которых все не пашет"?
Код, который опубликовал ETNO в указаноом посте один в один с тем, который опубликован на моем блоге.
И который вполне пашет на двух десятках моих сайтов.
Подскажите пожалуйста у меня стоит следующий код:
return_links(); ?>
$o['charset'] = 'UTF-8';
$sape = new SAPE_client($o);
($sape_venality_name);
unset($o);
? >
return_links(); ?>
А как быть с контекстными ссылками, таким кодом они не размещаются, что нужно в нем поправить?
Юрий, этот код выводит только обычные ссылки.
Для вывода контекстных ссылок нужен плагин maxsite-sape.
Поищи на сайте автора - http://maxsite.org/.
Здравствуйте!
С недавнего времени использую этот метод.
На долго ли такой способ продливает жизнь ГС?
У меня ни один сайт с этим кодом не был забанен.
Я не утверждаю, что и у вас так будет. Это как повезет.
Но почему бы не увеличить шансы на долгожительство для своих сайтов?
А возможно ли так же сделать в плагине isape?
/)ima, я не знакома с этим плагином.
Но, поскольку приведенный мною код не имеет отношения к плагинам, а вставляется непосредственно в файлы темы, думаю, что их можно совместить.
У меня отображаются на всех страницах ссылки с главной а остальные нет
Интересно, я испробовал этот вариант, но у меня, как и у Val, на внутряках выводятся те же ссылки, что и на Главной странице. Какие есть варианты?
Вариант у меня только один. Попробуйте скачать и вставьте этот код в файл header.php.
Возможно, при копировании кода с этого поста была допущена какая то ошибка - например, какой-то пробел лишний или другая мелочь, которая дает ошибку.
самый простой способ-в сам код ставишь - list($_SERVER ['REQUEST_URI'] ,)=preg_split("/\?/",$_SERVER['REQUEST_URI'],2); - и все проблемы, не в sape.php
Плохо быть неграмотным. Читаю комментарии, кручу-верчу этот код, а толку нет - видать к компьютеру нужно только с топором подходить. А потом садиться учить PHP...
Огромное спасибо, вроде всё работает!
Я уже четыре дня пытался установить Sape на свой сайт и ничего не получалось, а прочитав Ваши посты заработало, теперь мой сайт на модерации, надеюсь всё будет хорошо! А вот по поводу Вашего последнего пункта - "Затем идем на http://pr-cy.ru/sale_links, пишем адрес своего сайта в форме детектора продажных ссылок и радуемся тому, что все наши ссылки признаны естественными." - эта ссылка не рабочая!
Спасибо, Ksana, всё установила, ссылки отображаются нормально, только вот как теперь проверить - ссылка _http://pr-cy.ru/sale_links ведёт на ошибку 404, а RDS-бар в мозиле всё равно указывает, что сайт продаёт ссылки.
Проверить работоспособность кода теперь можно только опытным путем.
Наличие продажных ссылок на сайте можно определить разными способами.
В приведенном мной коде используется один способ проверки.
По утверждению, автора скрипта sape_venality_name.php, это тот способ, который использует поисковая система Яндекс.
RDS-бар, по-видимому, использует другой способ проверки.
Сделал все по инструкции, не могу понять только, ссылки должны видиться мне как посетителю?
У меня ссылок не видно, но захожу в сапу смотрю статус ссылки ОК. странно как-то
На след. день все еррор =)
аналогично. установил все но ссылок не видно. и в ерроры не выпадают.
А у меня сайт не на движке, не подскажете, как мне скрыть ссылки от поисковиков? У меня все файлы сайта php (с поддержкой php)
Попробуйте использовать указанный в посте код.
Возможно, он будет работать и на вашем сайте.
Собственно, в этом коде нет ничего особого, что позволяет его использовать только для WordPress.
Только укажите в нем кодировку вашего сайта.
А что такое "продажные ссылки"? Как узнать, успела ли я обзавестись этим добром? : )
Это ссылки, продаваемые вами через биржи автоматической продажи ссылок. Если вы их не продавали, значит таких ссылок на сайте нет.