Речь идёт не только о противодействии нашему детектору продажных ссылок, но и любому другому. Работающему в виде отдельного ресурса, или встроенного в алгоритм поисковика :) Неважно.
Давайте для примера не позволим определиться продажным ссылкам на сайтах, построенным на популярном движке LastoBlog, а заодно и на сплоговом движочке LastoSplog тоже.
Как известно, стандартный код Сапы цепляется к сеттингам таким образом:
global $mysape;
define ('_SAPE_USER',"usersiteidentificator");
require_once ("./data/sape/sape.php");
$sape=new SAPE_client();
$mysape=$sape->return_links();
Предполагается, что папка сапы засунута внутрь файловой структуры движка, а не валяется беззащитно в его корне - отсюда и такой путь до файла с клиентским кодом, обратите внимание на сей аспект.
Как и на то, что папка переименована в sape.
Теперь давайте допишем пару операторов- выделено красным:
global $mysape;
define ('_SAPE_USER',"usersiteidentificator");
require_once ("./data/sape/sape.php");
require_once ("./data/sape/sape_venality_name.php");
$sape=new SAPE_client($sape_venality_name);
$mysape=$sape->return_links();
Ну и, естественно, в папочку сапы поместим ещё и такой код (имя файла, как понимаете, sape_venality_name.php)
<?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);
}
?>
После употребления этого кода (вызова его перед запуском класса Сапы) наш блог или сплог перестаёт реагировать на тестирование ресурса всякими Детекторами Продажных Ссылок на предмет наличия оных.
Также, если к ресурсу подцеплены клиентские кода иных бирж по продаже ссылок, срабатывающие после клиентского кода сапы, то все проданные через такие биржи ссылочки также перестают определяться детектором (в большинстве случаев, а не стопроцентно, естественно).
Тюнинг кода Сапы :)
При внешнем управлении работой клиентского кода Сапы иногда требуется оговорить кодировку, или ещё ряд каких моментов. Стандартно контора в этом случае советует сформировать массив с любым именем, сотворить в массиве нужные ключики, и присвоить им необходимые значения, а потом отдать массив классу. Но, как явствует из распечатки кода с красненькими строчками, мы уже скармливаем классу какой-то массив. И куда же засовывать кодировку?Разберём для примера ситуацию, когда Ваш сайт на UTF.
В этом случае в промежутке между запуском спасательного кода и отдачей результатов его труда классу, нужно вклинить в родившийся массивчик нужный ключик, в полном соответствии с рекомендациями конторы:
global $mysape;
define ('_SAPE_USER',"usersiteidentificator");
require_once ("./data/sape/sape.php");
require_once ("./data/sape/sape_venality_name.php");
$sape_venality_name['charset']='UTF-8';
$sape=new SAPE_client($sape_venality_name);
$mysape=$sape->return_links();
Нужны другие ключики? Вклинивайте по аналогии.
Когда продажные ссылки не от Сапы
Нельзя поручиться за всех брокеров продажных ссылок, ибо клиентский код у них очень различный, но теоретически вот такой конструкции (при полном отсутствии сапы на сайте) должно хватить:
require_once ("./data/sape/sape_venality_name.php");
Естественно, в данном документе мы рассматриваем исключительно камуфлирование продажных ссылок на указанных в начале документа движках, а также очень на них похожих. В противном случае чтение Вами этого документа ничем не оправдано.
Автор: Вадим Ласто.

0 коммент.:
Отправить комментарий
Ваш комментарий появится в блоге после проверки администратором