Backlink saklamak istiyorsan eğer. robots.txt ile botların useragentlerini belirterek disallow edersin. Mesala benim sitemdede robts.txt ile engellenmiş durumda. Fakat moz un botu nedense bu kurala uymuyor. Uysa bile her rakibim robots.txt dosyasına göz atabilir. Bunu en güzel şekilde sunucu tarafında halletmek lazım. Aşağıdaki kodla yapılabilir.
$useragent = array('MJ12bot','rogerbot', 'AhrefsBot','SurveyBot');
foreach($useragent as $agent) {
if(strpos($_SERVER['HTTP_USER_AGENT'],$agent) !== false) {
die('Sana giriş yasak'); // Veya header ile google.com.tr ye veya youtube yönlendir :)
}
}Veya htaccess ilede yapılabilir.
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^rogerbot [OR]
RewriteCond %{HTTP_USER_AGENT} ^exabot [OR]
RewriteCond %{HTTP_USER_AGENT} ^MJ12bot [OR]
RewriteCond %{HTTP_USER_AGENT} ^dotbot [OR]
RewriteCond %{HTTP_USER_AGENT} ^gigabot [OR]
RewriteCond %{HTTP_USER_AGENT} ^AhrefsBot
RewriteRule .* - [F]Farklı bir alternatif
SetEnvIfNoCase User-Agent .*rogerbot.* bad_bot
SetEnvIfNoCase User-Agent .*exabot.* bad_bot
SetEnvIfNoCase User-Agent .*mj12bot.* bad_bot
SetEnvIfNoCase User-Agent .*dotbot.* bad_bot
SetEnvIfNoCase User-Agent .*gigabot.* bad_bot
SetEnvIfNoCase User-Agent .*ahrefsbot.* bad_bot
SetEnvIfNoCase User-Agent .*sitebot.* bad_bot
<Limit GET POST HEAD>
Order Allow,Deny
Allow from all
Deny from env=bad_bot
</Limit>
Tabi rakibimizde bu işlemleri sunucu tarafında yapıp yapmadığını öğrenmemizinde yolları var.
"User Agent Switcher" mozilla addonu ile istediğimiz user agenti belirtebiliyoruz. ahrefs botun user agenti ile rakip siteye bir gir bakalım yönlendirme veya bir işlem varmı.
Veya kendi bir araçım olsun istersen php ilede yapabilirsin. Kodlar bana ait istediğin gibi kullanabilirsin.
error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT);
set_time_limit(0);
ini_set('display_errors', 1);
$header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
$header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Accept-Language: en-us,en;q=0.5";
$header[] = "Pragma: ";
$header[] = "X-Generate-Time:";
$curl =curl_init();
curl_setopt($curl, CURLOPT_URL,'http://www.domain.com/'); // girmek istediğin url.
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION,1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER,0);
curl_setopt($curl, CURLOPT_COOKIEJAR,dirname(__FILE__).'/kuki.txt');
curl_setopt($curl, CURLOPT_COOKIEFILE,dirname(__FILE__).'/kuki.txt');
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; DotBot/1.1; http://www.opensiteexplorer.org/dotbot, help@moz.com)'); // botun user agenti gelicek direk şunuda yazabilirdik MJ12bot
curl_setopt($curl, CURLOPT_REFERER, 'http://www.google.com.tr/');
$veri = curl_exec($curl);
curl_close($curl);Bu tür kurumsal firmalar robot kurallarına uymalıdırlar. Uymayanları uyarınız. Fakat farklı bir user agent den gelirse ruhunuz bile duymaz. En güzeli ip adreslerini belirleyip ban atmaktadır

Onunda çözümü var. Bu iş uzar gider. Benden bu kadar.
Php kodları hariçindekiler alıntıdır.