WordPress için güvenlik önerileri

Dünya genelinde milyonlarca sitenin altyapısı için kullanılan WordPress, kullanım ve düzenleme kolaylığı kadar güvenli bir sistem olması nedeniyle de tercih ediliyor. Her sürümü binlerce geliştirici tarafından test edilerek açıkları raporlanan ve sürekli güncellenerek güvenli olmayı başaran WordPress’in daha güçlü ve güvenli olması için dikkate alınması gereken bazı noktalar var. Bu yazıda WordPress için genel kabul görmüş güvenlik önlemlerinin önemli olanlarını bulacaksınız.

.htaccess dosyasını etkili kullanın

Aşağıdaki kodu .htaccess dosyasına ekleyerek sitenizin wp-config.php dosyasına tarayıcı üzerinden erişimi engelleyebilirsiniz.

<files wp-config.php>
order allow,deny
deny from all
</files>

Bazı siteler, başka sitelere ?ref=alanadi şeklinde kendi site adreslerini referans veren bağlantılarla hedef sitenin spamcı site damgası yemesine neden olan saldırılar yaparlar. Bu sitelerden gelen ziyaretleri kontrol etmek için aşağıdaki kodu kullanabilirsiniz.

RewriteCond %{THE_REQUEST} \?(ref=.*)?\ HTTP [NC]
RewriteRule .? https://tercan.net%{REQUEST_URI}? [R=301,L]

Bir sonraki ana maddede ?ref=alanadi saldırılarını robots.txt dosyası ile engellemek için örnek bir kullanım da mevcut.

Script injection yolu ile yapılabilecek saldırılardan korunmak için .htaccess dosyanıza aşağıdaki kodları ekleyebilirsiniz.

RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

Son olarak içinde giriş (index) dosyası bulunmayan dizinlerinizin içeriğinin görüntülenmesini engelleyin. Bunun için .htaccess dosyasına aşağıdaki kodu eklemelisiniz.

Options All -Indexes

robots.txt kullanın

robots.txt ile wp-admin, wp-includes ile wp-content dizininde bulunan bazı klasörlerin içeriklerinin ve ?ref=alanadi şeklindeki bağlantıların indekslenmesini engelleyebilirsiniz.

# robots.txt for https://tercan.net/
User-agent: *
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /*ref=*

WordPress versiyon bilgisini kaldırın

Daha önce yazdığım WordPress versiyon bilgisini değiştirmek veya kaldırmak başlıklı yazıyı inceleyebilirsiniz.

Eklentilerin versiyon bilgilerini kaldırın

Genelde WordPress eklentileri, kullandıkları JavaScript ve CSS dosyalarına eklenti sürümlerini parametre olarak eklerler. Tavsiye edilen sistemi güncel tutmak olsa da bazen eklentilerin güncelleme hızına yetişmek mümkün olmuyor. Bu durumda da siteler, eklentilerin eski versiyonlarında olabilecek açıkların tespit edilip saldırı amaçlı kullanılabilmesi riski ile karşı karşıya kalabiliyor. Ben bu tür bir riski göze almaktansa aktif temanın functions.php dosyasına aşağıdaki kodu ekleyerek eklentilerin JavaScript ve stil dosyalarından versiyon bilgilerini kaldırmayı tercih ediyorum.

function _remove_script_version( $src ) { $parts = explode( '?', $src ); return $parts[0]; }
add_filter( 'script_loader_src', '_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );

Farklı bir veritabanı öneki (prefix) kullanın

Sitenin kurulumu esnasında wp-config.php dosyasındaki standart tablo önekini farklı bir önek ile değiştirmeniz şiddetle tavsiye edilir. Bunun için wp-config.php dosyanızda bulunan

$table_prefix = 'wp_';

yerine aşağıdaki gibi bir önek tanımlayabilirsiniz.

$table_prefix = 'wp_YgnyeSvQ_';

Tablo öneki değiştirme işlemi yayında olan bir site üzerinde de yapılabilir fakat bu biraz uzmanlık bilgisi gerektiren bir işlemdir ve risklidir. Bu nedenle işlem öncesi yedek almanızı tavsiye ederim. Mevcut sitenizin yedeğini aldıktan sonra 6 Simple Steps to Change Your Table Prefix in WordPress adresindeki yönergeleri takip ederek tablo önekinizi değiştirebilirsiniz.

Yazılarda görüntülenecek ismi kullanıcı adından farklı yapın

Tek yazarlı bloglarda buna ihtiyaç olmasa da birden çok yazarı olan sitelerde yazıların altına yazının kimin tarafından yazıldığının belli olması için yazar ismi yazdırılır. Özellikle site üzerinde tam erişimi olan kullanıcıların giriş bilgilerinde kullandıkları kullanıcı adının burada görünmesi deneme – yanılma ile şifre tahmini yapan sistemlerin işini oldukça kolaylaştırır. Bu tür sistemler, hem kullanıcı adı hem de şifre tahmini yapmak yerine sadece şifre tahmininde bulunarak daha hızlı sonuca giderler. Bunu engellemek için aşağıdaki resimde de görebileceğiniz gibi kullanıcı adınız harici bir isim belirleyip bunu kullanabilirsiniz.

WordPress kullanıcı adı ve görülecek ad

Yazar profil sayfaları aktif olan sistemlerde bağlantıdan yola çıkarak kullanıcı adını tespit etmek mümkün olduğundan yazar bağlantısının da değiştirilmesi gerekir. Bunun için de Edit Author Slug isimli eklentisini kullanabilirsiniz. Eklentiyi kurduktan sonra profil sayfanıza girip aşağıdaki ekranda da görüleceği gibi yazar sayfanızın kalıcı bağlantısını değiştirebilirsiniz.

Edit Author Slug

Ve diğerleri

  • Hem WordPress yazılımınızı hem de eklentilerinizi sürekli güncel tutun.
  • Güçlü bir parola seçin. Güçlü ve tahmin edilmesi zor bir parola oluşturmak için TÜBİTAK – BİLGEM tarafından hazırlanan Güçlü Parola Oluşturma başlıklı yazıyı okuyabilirsiniz.
  • Dosya ve klasörlerinizin yazma izinlerini kontrol edin. Standart olarak dosyaların yazma izni 644, klasörlerin yazma izni 755 olmalıdır. Resim vs. gibi dosyalarınızı yükleyeceğiniz klasöre yazma izni olarak 777 vermelisiniz.
  • Benzersiz doğrulama anahtarları tanımlayın. Bu işlemi https://api.wordpress.org/secret-key/1.1/salt/ adresinden alacağınız kodları wp-config.php dosyanızda ilgili kodlarla değiştirerek yapabilirsinz.
  • Hem veritabanınızın hem de tüm sitenizin yedeğini periyodik olarak alın.

SON SÖZ:

Her şeyden önemlisi sitenizi adam gibi bir yerde barındırın. Zira sunucu güvenliği sağlanmadıkça en güvenli sistemlere bile kolayca zarar verilebilir.

Birkaç faydalı CSS kodlama ipucu

Birkaç faydalı CSS kodlama ipucu

İnsan, uzun süre aynı şeyleri yaptığı zaman bir düzen ve standart tutturup hem süreden hem de gereksiz yere fosfor harcamaktan kurtuluyor. Bu durum, zaman ve fosfor tasarrufunun yanında yazılan kodun kullanılabilir, okunabilir, uzun ömürlü ve evrensel standartlarda olması gibi birçok avantajı da beraberinde getiriyor. Aşağıda özellikle CSS ve HTML kodlaması ile uğraşanların işini kolaylaştırmak adına kaale almaya değer birkaç madde bulacaksınız.

reset.css kullanın

Tarayıcıların yerleşik stilleri farklı yorumlamalarından kaynaklanacak sorunları minimize etmek için bir reset.css kullanmak her zaman faydalıdır. Aşağıda kullanabileceğiniz birkaç popüler reset.css örneği mevcut.

https://meyerweb.com/eric/tools/css/reset/
https://clarle.github.io/yui3/yui/docs/cssreset/
http://necolas.github.io/normalize.css/
http://html5doctor.com/html-5-reset-stylesheet/

Ben, Eric Meyer tarafından hazırlanan reset.css v2.0 kullanıyorum.

Kısa CSS tanımlamaları kullanın

Mecbur kalmadıkça uzun tanımlamalar yapmak yerine kodlarınızı mümkün olduğunca kısaltın. Zira kısa tanımlamalar kullanmak, gerek temiz kod yazımı gerekse anlaşılabilirlik açısından hem size, hem de haleflerinize (sizden sonra geleceklere) avantaj sağlayacaktır. Kısa CSS tanımlamalarının avantajını, ileride yazdığınız kodlarda güncelleme ve düzenleme yapmak zorunda kaldığınızda kendinizi kalabalıklaşmış kodlarla boğuşmak yerine bir bakışta şıp diye anlaşılabilen kodların içinde bulduğunuzda anlayacaksınız. Performans için dosya boyutundan edeceğiniz avantajı saymıyorum bile.

.post-title {
    font-family: Arial, Tahoma, Verdana;
    font-size: 15px;
    font-style: italic;
    font-weight: bold;
    line-height: 30px;
}

yerine

.post-title {
    font: italic bold 15px/30px Arial, Tahoma, Verdana;
}

kullanım şeklini tercih edebilirsiniz.

Yine benzer şekilde özellikle margin ve padding gibi birden çok ve farklı değer verilebilen tanımlamaları yaparken tekrar eden değerleri kullanmaktan kaçının.

.container {
    margin: 10px 10px 10px 10px;
}

kullanımı yerine

.container {
    margin: 10px;
}

kullanımı,

.container {
    margin: 20px 10px 20px 10px;
}

kullanımı yerine de

.container {
    margin: 20px 10px;
}

kullanımı aynı sonucu verecektir.

CSS bloklarını birbirlerinden ayırın

Her bir bölge için tanımladığınız CSS kodlarını tek bir blok olarak bir arada tutun ve bu bölümleri anlaşılır yorum başlıkları ile diğer bölgelerin kodlarından ayırın. Böylece bir bölümde yapacağınız bir değişiklik için nerede düzenleme yapmanız gerektiğini rahatlıkla bulabilirsiniz.

/**
 * Header
 */
.header {
    line-height: 24px;
    margin-bottom: 20px;
    padding: 10px;
}

.site-title,
.site-description {
    font-family: Helvetica, Geneva, Arial, sans-serif;
    font-size: 24px;
}

/**
 * Navigation
 */
.navigation {
    margin-bottom: 10px;
}

.navigation ul {
    list-style-type: circle;
}

.navigation li {
    float: left;
    margin-right: 10px;
}

.navigation li a {
    color: #d00;
}

/**
 * Footer
 */
.footer {
    background: #eee;
}

.footer a {
    color: #333;
    font-size: 11px;
    text-decoration: underline;
}

Özellikleri bir arada toplamak için classları dağınık kullanmayın

Ortak özellikler atanması gereken elemanları ve class tanımlamalarını bir arada toplamak ile aynı özelliği birden çok eleman / class için tanımlamak arasında kalabilirsiniz. Bu durumda benim tercihim aynı özelliği birden çok eleman / class için tanımlamak oluyor. Her ne kadar diğer seçeneğin de avantajları olsa da sürdürülebilir bir kodlama yapısı için ikincisi çok daha makul ve mantıklı görünüyor.

Yani bahsettiğim;

.header,
.footer {
    line-height: 24px;
    padding: 10px;
}

.header {
    background: #333;
    color: #fff;
}

.footer {
    background: #eee;
    color: #222;
}

şeklinde bir kullanımdan ziyade

.header {
    background: #333;
    color: #fff;
    line-height: 24px;
    padding: 10px;
}

.footer {
    background: #eee;
    color: #222;
    line-height: 24px;
    padding: 10px;
}

şeklinde kullanmaktır.

Bu kullanım başlangıç için veya birkaç satırlık kod bloğu için yanlış bir kullanım şekli olarak görülse de çok fazla sayıda class ve id ile çalıştıkça hiç de yanlış olmadığı anlaşılacaktır. Aksi durumda, ileride çoklu tanım yaptığınız elemanlardan sadece bir tanesi için tanımladığınız özelliği değiştirmek istediğinizde; bu değişikliğin başka elemanları da etkileyip etkilemediğini sorgulamanız, etkilemişse etkilenenler için de ekstra tanımlamalar yapıp eski haline getirmeniz gerekecektir. Ki bu kadarıyla uğraşmak da pek doğru bir yaklaşım gibi görünmüyor.

Elemanların asli özelliklerini koruyun

Elemanlara standart kullanım özellikleri harici ekstra özellikler tanımlamayın. Örnek: strong için altı çizili bir tanımlama yapmak doğru değildir. İlla bu tür elemanlara özellik atamanız gerekiyorsa o eleman için bir class tanımlayıp o class için özellik belirleyebilirsiniz.

strong {
    text-decoration: underline;
}

yerine

strong.comment-author {
    text-decoration: underline;
}

şeklinde kullanırsanız daha sonra başka bir yerde strong uyguladığınız bir başlığın altının neden çizili olduğunu aramak zorunda kalmazsınız.

Anlaşılır ve mantıklı class – id isimleri kullanın

Her ne kadar her eleman için makul ve mantıklı class ve id ismi bulmak bir süre sonra zorlayıcı bir durum olsa da makul ve mantıklı isimler kullanmak her zaman yararlıdır. Birkaç harften oluşan kısaltmalar dosya boyutundan kazanmak için yararlı gibi görünse de stil dosyanızın içeriği yüzlerce hatta binlerce satırı geçtiğinde ve birbirine benzer bir sürü tanım olduğunda içinden çıkılmaz bir karmaşaya sürüklendiğinizi anlarsınız fakat iş işten geçmiş olur.

Aşağıdaki iki CSS bloğundan hangisinin daha okunabilir olduğunu söyleyip kıyaslama yapmanın gerekli olmadığını düşünüyorum.

.cnt {
    margin: 10px;
    padding: 5px;
}

.pt {
    font-size: 18px;
    font-weight: bold;
}
.content {
    margin: 10px;
    padding: 5px;
}

.post-title {
    font-size: 18px;
    font-weight: bold;
}

Sıfırlara değer vermeyin

Sıfır zaten sıfırdır ve px veya em ile bir değer tanımı yapmanız hiçbir şeyi değiştirmeyecektir. O nedenle 0px veya 0em şeklinde kullanım yapmaktan kaçının.
Yanlış kullanım şekli:

.comment {
    margin: 0px 10px 0px 5px;
}

Doğru kullanım şekli:

.comment {
    margin: 0 10px 0 5px;
}

Zorunlu üst elemanları genel tanımlamalara eklemeyin

Zaten bir üst elemana bağlı olmak zorunda olan elemanlar için CSS tanımlaması yaparken üst elemanını da kullanmayın.

ul li {
    float: left;
}

tanımlamasında ul kullanımının,

table td {
    padding: 5px;
}

tanımlamasında da table kullanımının hiçbir anlamı yoktur.

Çünkü bir listede li kullanabilmek için bir üst elemanı olan ul, bir tabloda td kullanabilmek için de yine bir üst elemanı olan table kullanmak zorundasınız. Ve sizin yapacağınız stil tanımı, siz üst eleman kullansanız da kullanmasanız da geçerli olacaktır.

CSS tanımlamalarında üst eleman ancak bir belirteçle (class veya id) kullanıldığında bir anlam kazanır. Şöyle ki;

ul.cat-list li {
    font-weight: bold;
}

Bu tanımlama ile sadece cat-list classı atanmış liste elemanlarının yazıları kalın olacak, bu tanım diğer liste elemanlarını etkilemeyecektir.

Ve diğerleri

Kendiniz için en kolay ve en kullanışlısının hangisi olacağına inanıyorsanız onu seçip standart bir isimlendirme sistemi kullanın.

– Tümü küçük harfle isimlendirme yapabilirsiniz:

.author-name {
    font-size: 18px;
}

– Sadece kelimelerin ilk harfleri büyük, diğerleri küçük şeklinde isimlendirme yapabilirsiniz:

.Author-Name {
    font-size: 18px;
}

Bir standardınızın olması için sabit bir ayraç belirleyip tüm isimlendirmeleri aynı ayraçla yapın.

– Ayraç olarak tire (-) kullanabilirsiniz:

.author-name {
    font-size: 18px;
}

– Ayraç olarak alt çizgi (_) kullanabilirsiniz:

.author_name {
    font-size: 18px;
}

Ben, class ve id isimlendirmelerini tümü küçük harfle ve kelimeleri tire ile ayırarak yapmayı tercih ediyorum.

Az lafla çok şey anlatmak her babayiğidin harcı değil, hele ki benim hiç değil! O nedenle yazı epey uzun olmasına rağmen hala değinilmesi gerektiği halde değinemediğim birçok madde var. Neyse ki bu maddelerin neredeyse tamamı az buçuk İngilizce bilgisi olanların anlayabileceği halde birileri tarafından yazılmış. Aşağıya gerek bu yazıyı yazarken faydalandığım gerekse yazıda bahsedemediğim ipuçlarını barındıran birkaç makaleye bağlantı ekliyorum.

SEO nasıl yapılmaz?

SEO nasıl yapılmaz?

Günümüz internet aleminin en popüler terimlerinden biri olan SEO yani Arama Motoru Optimizasyonu; hakkında az-çok bilgi sahibi olanların uzmanı kesildiği, hiç bir bilgisi olmayan ve/veya kısa zamanda sitesini zengin olacak miktarda para kazanacak seviyelere getirmek isteyenlerin ise öğrenmeye heves ettiği bir (neredeyse) meslek dalı haline geldi. Hal böyle olunca da SEO hurafeleri başlıklı yazımda bahsettiğim gibi hem uzmanı hem de dezenformasyonu bol bir alan oluverdi. Peki, o zaman bu işi nasıl yapmak gerekiyor? Öncelikle bu soruya cevap verebilmek için SEO denen şeyin nasıl yapılmayacağını bilmek gerekiyor. Öyleyse gelin “SEO nasıl yapılmaz?” sorusuna hep beraber cevaplar arayalım.

Yazılar etiket çöplüğüne döndürülerek SEO yapılmaz!

Çoğu site sahibinde ve editörde yerleşmiş bir kanı olan “Konuya ne kadar çok etiket eklersem o kadar anahtar kelimede üst sıralarda çıkarım” düşüncesi hem yanlış hem de orta ve uzun vade için zararlıdır. Yanlıştır çünkü bir etikette (o da garanti değil) üst sıralarda çıkmak için onlarca indekslenmeyen çöp etikete sahip olmak, bir site için pek de iyi ve iç açıcı bir durum olmasa gerek. Evet, bazı durumlarda etiket sayfaları asıl konulardan daha önce ve üst sıralarda çıkıyor. Fakat bu, çok sık karşılaşılan bir durum olmadığı için önerilen ve faydalı bir yöntem değildir. Velhasıl, gerçekleşme olasılığı oldukça düşük bir durum için yazıları etiket çöplüğüne çevirerek SEO yapılmaz…

Kopya içerik yayınlayarak SEO yapılmaz!

Başka sitelerin içeriklerini birebir kopyalayıp siteye ekleyen ve bot olarak adlandırılan uygulamalar, birçok webmaster forumunda neredeyse bir paket sigara fiyatı karşılığı satılıyor. Bu tür içerik ekleme araçları ile oluşturulan içerikler, diğer yüzlerce hatta binlerce site ile birebir aynı olacağı için sitenin, arama motorlarınca kopya içerik yayınlayan bir site olarak işaretlenmesine neden olacaktır.

SEO hurafeleri başlıklı yazımda da belirttiğim gibi kopya içerik, yüksek ziyaretçi sayılarına ulaşmak için kullanılan araçların başında gelmektedir. Fakat kopya içerik ile ulaşılabilecek ziyaretçi limitleri, sitenin kategorisine bağlı olarak hemen hemen bellidir. Periyodik olarak site analizleri ve rapor kıyaslamaları yapanların rahatlıkla görebileceği bir gerçek şu ki; devamlı kopya içerik yayınlayan siteler, ziyaretçi sayısı bağlamında bir süre sonra yerinde saymaya, bir süre daha sonra da düşüşe geçmeye başlar. Bu tür sitelerden pek şanslı olanları, bu düşüş sonrası oturdukları ziyaretçi sayısı aralığında “Ne uzar, ne kısalır” dedirtecek şekilde yaşamlarını sürdürürken, şanssız olanları ya arama motorlarınca listeleme dışı bırakılır ya da kendilerine ancak arama sonuçlarının en sonlarında yer bulabilirler.

Bütün bunlardan, SEO’nun sadece kolay ve hileli/illegal yollar kullanılarak kısa sürelerde ulaşılan yüksek ziyaretçi sayıları ile ölçülen bir şey olmadığı sonucuna varmak yanlış olmayacaktır.

WordPress tema dağıtarak SEO yapılmaz!

Son dönemde Şirinlerin mantar evleri gibi türeyen SEO platformu sitelerin birçoğunun, gerek backlink almak suretiyle PageRank değerlerini artırmak, gerekse piyasada bilinirliklerini artırıp isim yapmak adına (oldukça basit ve ucuz bir yol olan) WordPress teması hazırlayıp dağıtma işine yöneldiğini gözlemliyorum. Bu işi yaparken de temalarının SEO ile yoğrulduğunu, kısa zamanda mucizeler yaratacağını söylemekten çekinmiyorlar. Günümüzde pazarlama ve satış eylemleri için kullanılan araçların başında mübalağa gelse de, bu denli yüksek frekanslı mübalağaya partal demek hiç de yanlış olmaz. Yani WordPress’in arama dostu bir yapıda inşa edilmesinin avantajını (kendilerine fayda sağlamak için) dağıttıkları temalardan menkulmüş gibi sunmaya çalışan bu zümrenin yaptığı gibi tema dağıtarak SEO yapılmaz!

Paravan siteler açarak SEO yapılmaz!

Bir sitenin başka sitelere verdiği bağlantılar iltifat, referans veya kaynakça olarak düşünülebilir. Bütün bunların tamamına ise bir internet terimi olarak backlink denir. Yani başka bir siteden verilen bağlantı. Nasıl ki yapılan iyiliğin kıymetlisi karşılık beklemeden yapılanı ise alınan backlinkin değerli olanı da altında başka bir niyet, ardında gizli bir hesap olmadan verilmiş olanıdır. İltifat almak için beğenilen bir şeyler yapmak, referans veya kaynakça olarak gösterilebilmek için de değerli bir şeyler üretmek gerektiği için doğal yollarla backlink almak zordur. Hal böyle olunca Süpermen oldukları için kısa zamanda çok iş çıkartmak isteyen SEO uzmanlarımız backlink işinin de naylonunu icat ettiler; paravan siteler açıp ana siteye bağlantılar vermek!

İnternet üzerinden sağlıklı bilgiye ulaşmak zaten bir dert iken (ki bunu dünyanın en bilinen markasının temelde arama hizmeti sunuyor olmasından anlamak zor değil) sağ olasıca SEO uzmanları, üç-beş kuruş daha kazanmak için bu zorluğun şiddetini artırıp internetin çöplüğe dönmesine katkı sağlıyorlar. Gün gelecek ve kendi çalışma alanını kirletmenin makul ve mantıklı bir insanın yapacağı sağlıklı bir eylem olmadığını anlayacaklar. Umarım o zaman iş işten geçmiş olmaz.

Ben yine üzerime düşen görevi yerine getiriyor, hangi alanda olursa olsun bir işin makbulünün doğal olanı olduğunu belirtip paravan sitelerle SEO yapılmayacağını pek muhterem uzmanlara hatırlatıyorum.

Gerekli gereksiz her yazıya yorum bırakılarak SEO yapılmaz!

Düşen alan adı (domain) ve barındırma (hosting) maliyetleri nedeniyle paravan siteler oluşturup SEO çalışması yapılan sitelere backlink desteği sağlamak oldukça kolaylaştı. Fakat bu kadarına bile zahmet etmek istemeyen kolaycı uzmanların başvurduğu başka bir backlink elde etme yöntemi, ziyaretçisi ve PageRank değeri yüksek sitelerdeki yazılara yorum bırakmaktır. Kısa zamanda bağlantı çöplüğüne döndüğü için bu sayfaların etkisi oldukça azdır. Olur-olmaz her kategoriden site için birçok uygunsuz kelime ile bağlantı oluşturulduğundan, bu yolla temin edilen backlinkler bir süre sonra bağlantı verilen siteye yarar sağlamak yerine zarar vermektedir.

Ortalıkta “Ben SEO uzmanıyım” naralarıyla dolaşan birçok tatlı su SEO’cusunun SEO kontrol listesinin vazgeçilmez kalemleri olan bu maddelere daha başka eklemeler de yapılabilir. Fakat gerek yazının uzaması, gerekse diğer maddelerin öncelik ve önem açısından yukarıdakiler kadar mühim olmaması nedeniyle bu yazıyı burada bitirmek yerinde olacaktır. Fırsatım olursa belki başka bir zamanda kalan maddeleri bir devam yazısı olarak yazarım.