SEO Tavsiye
Bu Bir Soru değildir
SEO Açısından en önemli şeylerden biride ziyaretçinin sayfada kalma süresidir
epeydir kafa yorduğum konu üzerinde çalışma yaptım ve başarıya ulaştım sizede tavsiye etmek istiyorum
robotlar sürekli siteme girip wordpress linklerini arıyordu.
haliyle wordpress olmadığı için bir şey bulamadan siteden çıkıyorlardı.
buda hemen çıkma oranını yükseltti.
bende .htacess ile wp türevli veya gereksiz linkleri topralayıp bunları tek bir sayfaya yönlendirdim.
ve ip adreslerini http://ip-api.com/json/ yardımı ile sorgulatıp veri tabanına kaydedip bu ip adreslerini banladım.
ne olur ne olmaz diye veri tabanında tutup ips adlarınıda kaydedıyorum google amcayı banlamamak adına panelede ekledim banlanan ipleri ve ips adlarını takip ediyorum.
yavaş yavaş hemen çıkma oranlarıda düşmeye başladı.
ve çoğu kelimede 1. sıra bir çoğundada ilk sayfadayım.
banlanan ip adresleri yakın zamandada hangi kelime ile siteye girmiş onuda kaydedicem veri tabanına
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (28)
GÜNCEL YAKALANAN ZARARLI BOT JSON LİSTESİ
şuana kadarki datalar başka nere yuklenır bılemedım uygun bır yere yukleyen olursa guncelleyeyım
Googlebot'u doğrulama
Google'ın kendi dökümanı incelemek isteyen inceleyebilir.
Ben birkaç gün sistemi beklettim, yakaladığım robotlar bunlar
https://prnt.sc/x1espf
evet isimler değişebilir en güzeli ipyi ordan aratabilirsin sql işlemleri ile yük oluşturmaz listede var ise
söyle bişi yapsak sanki biraz daha iyi olur
fonksiyon yardımı ile temiz botları tespit edip direk izin vererek sql işlemleriyle uğraştırmayalım
ip takibi ile de uğraşmayız.
public static function BotControl(){
$list = [
"Google"=>"Googlebot"
];
$regexp = "/". implode("|", $list)."/";
$agent = $_SERVER['HTTP_USER_AGENT'];
if(preg_match($regexp, $agent,$matches)) {
$bot = array_search($matches[0], $list);
return $bot;
}else{
return false;
}
}
daha iyi olur gibime geldi sanki ufak yüklerden kurtulmul oluruz
valla şahsen belirtilen dosya uzantılarına girmeye çalışanlar banlansın :)
sanane adamın admin yoludan veya
detay/haber ise detay.php=baslik shadabs
niye elle oraları kurcalamayı deniyorsunki :D
ben genel de inj ve xss için deneme bulunanları kısmen önlemek için
url tipime göre
id ve başlığı şifreleyip fonksiyona gönderiyorum ordan şifreyi çözüp veritabanında varmı diye
kontrol ettiriyorum eğer varsa zaten sayfa açılıyor
yoksa 404 e atıyorum direk
bu tarafından ban atmak istemiyorum çünkü sağlayıcı sorunlarından dolayı
sql de anlık bir okuma olmaz ise yok gibi görür adam normal url bazında bile girse
lamer denemesi diye ban atabilir :)
sunucuya güveniyorsam tabi onada ban atıyorum :)
detay.php ler düz çalışmadığı için haliyle hata verebilir
onlar içinde direk get yoksa diye veya boşşa gibi sorgular ile işlem yaptırıyorum
ama ordan %100 atıyorum siteden çünkü ana dizinde hiçbir detay yolum olmaz benim
biraz karışık çalışmayı seviyorum :)
site üzerindeki formlarda zaten recaptcha v3 kullanıyorum ona ekstra kendi yazdığım
token sınıfını kullanıyorum ne olur ne olmaz diye google amca bizden iyidir :)
tokenleride post ile atmıyorum oluşan token ona göre session a girer incele kısmından değiştirmeye çalışsa bile
token hatasını her türlü alır. aynı şekilde token ve token adıda
işlem sonrasında ve sayfa değiştiği anda bu sessionları boşaltıyorum.
sabit olan sayfalar atıyorum iletisim.php gibi sayfalara inj deneyenlere direk ban atıyorum
ne arıyorsun orda öyle şeylerle demi :)
işte hepberaber geliştirelim eksıklerı tavsıyelerı kurtulalım şu botlardan tabıkıde paylasıcam henuz az data var iyice çoğalsın paylaşıcam
sunucu log larından buluyorum o nedenden sadece admin yollarını eklemıyorum bazen xss açığı arıyorlar mesela onlarıda eklıyorum
kullanan arkadaslarda dataları paylasır geliştiririz
birde şunu düşünüyorum türkiye bazlı ip adreslerini belirlir aralıklarla sildirmeyi malum ip adreslerimiz genelde sabit değil başkalarıda boşa banlanmasın
lamer her yerde var malesef :))
zaten gerekli data oluştukça hergün büyür ve genişler
uzun vadede bu botların %80 i siteye zarar veremez hale gelir
burda biraz da bu botların tarama esnasında daha çok nelere baktığınıda bilmek lazım
sadece admin yolları ilk akla gelen çözüm de olablir ..
elindeki datayı da bizle paylaşabilirmisin :)
muhtemelen sen yapmışsındırda
diğer arkadşlar da yapsın diye
durum diye bi sütün ekleyin bence
0 ve 1 girilebilen
eğer 0 ise siteye girebilir
1 ise giremez olarak kodları düzenlerseniz daha iyi olur
eyw sagolasın şuan ısımı tertemız goruyor.
elımde guzel bır data olussun tekrardan json ve white list black list tarzında hazırlıycam
kotu nıyetlı botların neler yaptıklarını kendı sıstemım ve web de paylasılanlara gore toparlıycam ve stabıl calısan bır sıstem gelıstırıcem
bu tarzda bır seye hıc rastlamamıstım ya dusunen olmadı yada kımse paylasmadı ama yıne soyluyorum mutlak sekılde
stabıl hale gelınce bu sıstemi HERKES kullanmalı.
google analytics üzerinden hemen çıkma oranlarının nasıl düştüğünü görecekler
aslına bakarsan temiz botları whitelist olşturup ordan çekip uğraşmamak lazımda
bunların sürekli ipleri değişiyordur
ki google sürekli kendi botlarını kullanıyormu yoksa sadece istatistik kovalamak için kendi alt botları varmı vb şeyler olabilir.
htaccess de yaptığın iş gerçekten mantıklı özellikle nefret ettiğim wordpress sistemini kullananlar için alternatif bir yöntem. :)
yazmaktan çok bazen düşünmek en büyük yazılımdır :)
tebrikler @qplot
En iyisi bunun tam düzgün bir sistemini yazdıktan sonra çözmek GoogleBot'u banlayıp seo düşmesi yaşamak istemem
Sayfanın sonunda tıklayarak ulaşılamayacak sadece tarayarak ulaşılabilecek birlink koysak siteyi indiren botlardan da kurtulabilir miyiz acaba
Gayet iyi hızlı yapmana göre, sistemi tamamen kendi sistemime entegre ettim bakalım 24 saat içerisinde neler yakalayabilecek, burada paylaşırım
Eline sağlık güzel sistem yapmışsın kesinlikle kullanılabilir bir sistem
ÖNCELİKLE SUNUCUNUN LOGLARINA BAKARAK BU htacess kodlarını olusturdum kendınıze gore ekleme cıkarma yapabılırsınız.
buradaki amaç
xx.com/wp-login yazan bot veya şahış kullanıcıyı hop.php sayfasına yonlendırıyorum.
RewriteRule ^wp-login$ hop.php [L,NC]
RewriteRule ^wp-loginx$ hop.php [L,NC]
RewriteRule ^wp-login.php$ hop.php [L,NC]
RewriteRule ^administrator/$ hop.php [L,NC]
RewriteRule ^administrator$ hop.php [L,NC]
RewriteRule ^admin$ hop.php [L,NC]
RewriteRule ^admin/$ hop.php [L,NC]
RewriteRule ^wp-admin$ hop.php [L,NC]
hop.php içeriği
$ip = GetIP(); // $ip=$_SERVER['REMOTE_ADDR']; şeklindede yapabılırsınız
$ch = curl_init('http://ip-api.com/json/'.$ip.''); // ip bilgilerini sorgulatıyorum
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$json = curl_exec($ch);
curl_close($ch);
$api_result = json_decode($json, true);
$isp=$api_result['isp'];
$encode=json_encode($api_result);
// ip adresi sql de varmı dıye sorgulatıyorum kı zaten giremıyorlar sıteye ama olsun
//belırlı ip leri engelleme dıyebılırım dıye sorgulattım
$bak=$db->prepare("SELECT * FROM ip_engelle WHERE ip=?");
$bak->execute([$ip]);
$say=$bak->execute();
$row=$bak->FETCH(PDO::FETCH_ASSOC);
//IP ADRESINI ISP VE DIGER GEREKLI BILGILER ILE VERI TABANINA EKLIYOR VE BANLIYORUM
if($row['ip']!=$ip){
$tur="robot";
$banla=$db->prepare("INSERT INTO ip_engelle (ip , tur, isp, full) VALUES (?,?,?,?)");
$banla->execute([$ip,$tur,$isp,$encode]);
}
bunuda sitenın en ustune koyuyorum ve sorgulatıyorum sısteme gırıs yapan ıplerı
$ipengelle=$db->prepare("SELECT * FROM ip_engelle");
$ipengelle->execute();
while($ipler = $ipengelle->FETCH(PDO::FETCH_ASSOC)){
$ipadres[]=$ipler['ip'];
}
$kimlik = GetIP();
foreach($ipadres as $ban){
//IP YASAKLAR ICINDE ISE GOOGLEYE YONLENDIRIYORUM
if($ban == $kimlik){
header('Location: http://www.google.com/');
exit();
}}
Acaba kodlarını paylaşabilir misin yeni seo işlerine girenler için biraz karmaşık olabilir anlatma tarzın
manuel bot ısmı ıle kaydedıyorum kendı verı tabanımı olusturuyorum sunucunun log dosyalarına bakıp hangı lınklere gıdıyorlar onları tespıt ettım
o lınkere gelenler yanı mısal
site.com/wp
site.com/wp-admin
site.com/wp-login
site.com/fckeditor/xx.js
site.com/admin
tarzında linklere girenleri array veya .htacess ile hop.php sayfasına yonlendırıyorum oradan engelleyıp verı tabanına kaydedıyorum
bır dahakı gırdıgındede dırek googleye yonlendırıyorum array ıle kontrol edıp
acayıp super calısıyor bence herkesın yapması gereklı boyle bır sıstem
yok statik bilgi ile girersek gözümüzün yaşına bakmazlar tabi :D
sistemin güzel
merak ettiğim banladıktan mı türü robot diye atama yapıyorsun yoksa
eğer isp arrayın içinde bunlardan bitanesi varsa şutla mı diyorsun.
tavsıyen ıcın teskkurler lakın bunları epey uzun zamandır yapıyoruz.
bu soyledıgım bambaska bır sey seo denınce akla bu yazdıgın tarzında seyler akla gelır.
bu yazdıgım hakkında pek kısı kafa yormaz o nedenden oturu yazdım ama dedıgın sey yıllardır kullanırım ozellıkle yorumlar acısından cok cok guzel yıldız cıkar google aramalarında cok severek kullanırım ama dıkkat edılmesı gerekn bır konu var yanlıs bılgıler yazarsanız ornek verılmemıs oyu vermıs gıbı gosterırsen google banlar senı :)
güzel düşünce tebrik ederim.
bende sana söyle bir örnek vereyim muhtemelen biliyor olabilirsin.
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Article",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "www.deneme.com"},
"headline": "DENEME BAŞLIK",
"articleSection" :"Lifestyle",
"inLanguage": "tr-TR",
"wordCount" :kelime sayısı,
"image": {
"@type": "ImageObject",
"url": "logoadres,i",
"height": 700,
"width": 700
},
"datePublished": "2021-01-17T00:03",
"dateModified": "2021-01-09T00:03",
"author": {
"@type": "Person",
"name": "www.deneme.com"
},
"publisher": {
"@type": "Organization",
"name": "www.deneme.com",
"logo": {
"@type": "ImageObject",
"url": "logorul",
"width": 112,
"height": 44
}
},
"description": "sayfa açıklama"
}
</script>
sayfalarına döngülerin içine shema lar ekle
sonra
https://search.google.com/test/rich-results?hl=tr
burdan test et anladığım kadarı ile google buna da çok önem veriyor.
üstüne input kullandığın yerlerde her zaman label de kullan
sayfa içeriklerini ajax ile çağırırsan aşırı dom miktarından da kurtarırsın.
aklıma şimdilik bunlar geliyor bir kaç gündür kafayı yedirti bu hatalar sıfırladım hepsini en sonunda bi sunucu yanıt süresi kaldı onuda ana yere alınca düzelir.