htaccess Nedir? .htaccess SEO Teknikleri

htaccess Nedir?

.htaccess, belirli bir dosya dizininin içeriğine internetten veya bir intranetten kimlerin erişebileceğini veya erişemediğini belirtmek için kullanılan bir dosyanın adıdır. Birçok kaynakta ayar dosyası olarak geçen htaccess, özellikle SEO uyumlu URL oluşturma, yönlendirme ve değiştirme konusunda çok değerli bir dosyadır.

htaccess dosyası, çok uzun zamandır anlatmak istediğim ama nedense bir türlü vakit bulup anlatamadığım bir konu. Bugün seosozluk üzerinden yazıştığım bir okurumuzun sorusu üzerine artık bu konuyu ertelememeye ve detaylıca anlatmaya karar verdim. Umarım bu yazıdan sonra htaccess dosyasının SEO açısından ne kadar önemli olduğunu herkes öğrenmiş olur.

htaccess dosyası, arama motoru optimizasyonu konusunun Süperman’idir. Yani doğru oluşturulmuş bir htaccess dosyası ile rakiplerinizi hiç çaktırmadan sollayabilirsiniz 🙂 Peki htaccess dosyası nedir, htaccess dosyası ne işe yarar? Anlatayım…

htaccess Dosyası

htaccess dosyasını, websitenize gelen kullanıcılara yönlendirmeler yapabileceğiniz bir dosya gibi düşünebilirsiniz. Birçok kaynakta ayar dosyası olarak geçen htaccess, özellikle SEO uyumlu URL oluşturma/yönlendirme/değiştirme konusunda çok değerli bir dosyadır. (Dosyanın tanımını yapmak çok da basit değil dolayısıyla birazdan vereceğim örneklerle konunun kafanızda netleşeceğinden hiç şüphem yok)

htaccess dosyası nasıl oluşturulur?

Aşağıdaki adımları izleyerek ilk htaccess dosyanızı oluşturabilirsiniz.

  1. Bir tane not defteri sayfası açın. (bildiğimiz notepad)
  2. Farklı kaydet diyelim.
  3. Tüm dosyalar seçeneğini seçelim.
  4. Dosyanın adını htaccess yazıp kaydedin.

İşte bu kadar!

Sizin için bir tane .htaccess oluşturdum. Dosyayı bilgisayarınıza indirmek için tıklayabilirsiniz. zip dosyasından çıkarmayı unutmayın.

Evet şu an elimizde boş bir htaccess dosyası var. Peki şimdi sırada ne var?

Önemli! Birazdan anlatacaklarımı yapmadan önce mutlaka sitenizin yedeklemesini alın. 

htaccess ve SEO

Hemen htaccess dosyasının kullanımını ve konunun SEO ile ilgili ne alakasının olduğunu anlatıyorum…

1 – 301 Yönlendirmeleri

301 yönlendirmeleri, kalıcı URL yönlendirmeleridir ve hem kullanıcıları hem de arama motoru botlarını değiştirdiğiniz sayfalara yönlendirmenize yarar. Dolayısıyla arama motorları hem eski hem de yeni sayfalarınızı aynı anda taramak zorunda kalmaz dolayısıyla yinelenmiş içerik problemini çözmüş olursunuz.

Yapmanız gerekenler:

  • Aşağıdaki kodu htaccess dosyasına ekliyoruz.

Options +FollowSymLinks
RewriteEngine on
Redirect 301  /dosya1.html   http://www.orneksite.com/dosya2.html

Bu örnekte ve birazdan vereceğim tüm örneklerde, orneksite.com’u kendi site adresinizle değiştirmenizi, dosya isimlerini de olması gerektiği isimlerle değiştirmenizi rica edeceğim.

2 – Dinamik URL – Statik URL Yönlendirmesi

SEO uyumlu URL konusunun birinci kuralı, URL in okunabilir olması. Yani bir web sayfasının adresini gördüğünüzde, eğer o sayfanın ne ile alakalı olduğunu anlayabiliyorsanız, SEO uyumlu URL sınavının ilk sorusunu çözdünüz demektir. 🙂

Örnek:

SEO uyumlu olmayan bir URL: http://www.orneksite.com/urun.php?keyval=48&keyval2=72

SEO uyumlu URL: http://www.orneksite.com/erkek-espadril.php

Şimdi yukarıdaki dinamik URL i, statik ve SEO uyumlu URL e yönlendirelim.

Options +FollowSymLinks
RewriteEngine on

RewriteCond   % {QUERY_STRING}   ^keyval\=48\&Keyval2\=72$ [nc]RewriteRule   ^urun.php$ http://www.ornek.com/erkek-espadril.php? [r=301, l]

3 – Aynı Anasayfayı Açan URL Problemleri

Websitenize ait anasayfayı sadece tek bir URL açmalıdır aksi taktirde websiteniz yinelenen içerik problemi ile tekrar karşı karşıya gelecektir.

Bu problemlerin en çok yaşandığı iki örneği açıklayalım.

index.php dosyasının yönlendirilmesi

websitenizin hem ornek.com hem de ornek.com/index.php dosyalarının aktif olmaması gerekir. Yapmanız gerekenler:

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*\/index\.phpl?
RewriteRule ^(.*)index\.php?$ http://www.ornek.com/$1 [R=301,L]

www subdomain yönlendirmesi

yukarıdaki örneğe benzer olarak, websiteniz hem www.ornek.com hem de ornek.com u açmamalıdır. Aşağıdaki örnek ornek.com’u www.ornek.com’a nasıl yönlendirebileceğinizi anlatmaktadır.

Options +FollowSymLinks
RewriteEngine on
rewritecond  %{http_host}  ^ornek.com [nc]rewriterule  ^(.*)$  http://www.ornek.com/$1 [r=301,nc]

4 – 404 sayfaları

404 not found, kullanıcıların sildiğiniz bir sayfaya ulaşmaya çalıştıklarında karşılaştıkları sayfadır. 404 sayfasının doğru oluşturulması ve htaccess dosyasına doğru tanıtılması gerekir. Aksi taktirde bu sayfalar yönlendirme sayfalarına dönüşür, SEO açısından websiteniz zarar görmüş olur.

Yapmanız gerekenler

  • 404 sayfası oluşturmanız (ornek404.php),
  • Oluşturduğunuz 404 sayfasını dizine atmanız,
  • Aşağıdaki kodu htaccess dosyasına eklemenizdir.

Options +FollowSymLinks
RewriteEngine on
ErrorDocument  404  http://www.ornek.com/ornek404.php

5 – IP veya Spam Engellemek

Websitenize gün içerisinde birçok spam trafik gelmektedir. Bu trafik direkt veya referral kanallardan geliyor olabilir. Google Analytics ile spam filtreleme yapabilirsiniz ancak unutmayın ki bu işlem sadece sitenize gelen trafiği görmemenizi yani filtrelemenizi sağlar. Bu zararlı trafiğin sitenize gelmesini engellemez.

Spam trafik, websiteniz üzerinde gereksiz bir yük oluşturmakta hatta websitemizin açılış hızını bile düşürmektedir. Dolayısıyla bu trafiği sitemize sokmamamız gerekir.

IP engellemek için:

Options +FollowSymLinks
RewriteEngine on
Order  Deny, Allow
Deny from  61.16.153.67

Referral engellemek için ise,

RewriteCond %{HTTP_REFERER} semalt.com [NC,OR]
RewriteCond %{HTTP_REFERER} kolpabirsite.com [NC,OR]
RewriteRule .* – [F]

satırlarını ilgili htaccess dosyasına eklemeniz yeterli olacaktır. Siz engellemek istediğiniz IP adreslerini ve spam siteleri yukarıdaki örneklere göre tekrar düzenlersiniz.

6 – Hotlink Problemi

Websitenize eklediğiniz bir görsel, websitenizin band genişliğini yani veri aktarım limitinizi azaltmaktır. Aslında ortalama bir hosting paketi satın aldığınızda bu durum sizin için pek de bir problem yaratmaz. Ancak eğer Google galerisine veya internette farklı platformlara eklenen görselleriniz başkaları tarafından da kullanılırsa, bu durumda veri aktarım limitinizi azaltacaktır. Belki bir süre sonra site açılış hızınız yavaşlayacak, bu durumda SEO skorunuzu düşürecektir. (Görseliniz link ile beraber kullanıldığı taktirde bu durum yaşanacaktır…)

Yapmanız gereken;

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?orneksite\.com/ [NC]RewriteCond %{HTTP_REFERER} !^$
RewriteRule .*\.(jpg|jpeg|gif|bmp|png|swf)$ – [F]

.htaccess dosyası ile anlatacaklarım şimdilik bu kadar. Umarım yazının başında dediğim gibi bu konu ile ilgili aklınızda en ufak bir soru işareti kalmamıştır. Son olarak bu işlemleri yapmadan önce sitenizin yedeklemesini almanızı tekrar hatırlatmak istiyorum. Benden demesi 🙂

Bir Makale Daha?

Http’den Https’e Geçiş: Http’den Https’ye Nasıl Geçilir