Kullanışlı .htaccess Teknikleri

guclusat

Tanınmış Üye
Süper Moderatör
Hepimiz Az Cok .htaccess Nedir Biliyoruzdur. Oyüzden Uzatmadan Kodları Ve Açıklamalarını Dilim Döndüğünce Paylaşıcağım.

  • 1- İndex Dosyası Olmayan Alana Hata Verdirmek
  • 2- Direk Erişimi Engellemek
  • 3- Site Adınızdaki www. Bölümünü Kaldırın.
  • 4- Hata Sayfaları Ayarlayın
  • 5- İstenmeyen Dosyaları Ayarlamak
  • 6- Domain Yönlendirme
  • 7- SEO Linkler
  • 8- Hotlink Koruması
1- İndex Dosyası Olmayan Alana Hata Verdirmek

Websitesini Oluşturduktan Sonra Resimlerimizi, JavaScriptlerimizi Vs Klasörleyip FTP’ye Atıyoruz Ve Bırakıyoruz, Bazen İçine Bir index.html Dosyası Oluşturmayı Unutuyoruz,
İşte Bu Unutulduğunda Herhangi Biri Resimi, JS Dosyasını Görüntüleyip Direk Klasöre Erişip Tüm Dosyalarınızı Kolaylıkla Bilgisayarınıza İndirebilir. Bunu Tüm Klasörlerde Engellemek İçin Tek Bir .htaccess Kodu İşinizi Görecektir.
Root Dizindeki (Ana Dizin) .htaccess Dosyasına Aşşağıdaki Kodu Ekleyip Bir Bakın.

Kod:
Options -Indexes
2- Direk Erişimi Engellemek

Örneğin Script Hazırladığınızda Farklı Klasörlerde Fonksiyon Dosyaları, Classlar Barındırabiliyorsunuz Ve Bunların Direk Browser (Tarayıcı) İle Gösterilmesini İstemezsiniz. [Biliyorum PHP İle Yapılabiliyor]
Ancak Script İçinde include Yöntemi İle Çağırıldığında Çalışmasını Sağlayabilirsiniz.
Yapmanız Gereken İlgili Klasördeki .htaccess Dosyasına Aşşağıdaki Komutu Yazmanız Yeterli Olucaktır.

Kod:
deny from all
3- Site Adınızdaki www. Bölümünü Kaldırın.

Bu İşlemi Gerçekleştirmek İçin root (Ana Dizin)’deki .htaccess Dosyanıza Aşşağıdaki Kodu Ekleyin.

Kod:
RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.siteadiniz\.net$ [NC]

RewriteRule ^(.*)$ http://siteadiniz.net/$1 [L,R=301]

Bu İşlemden Sonra Sitenize Gelen Herkez Otomatikman http://siteadiniz.net Adresine Yönlendirilir.

4- Hata Sayfaları Ayarlayın

Bildiğiniz Üzere Eger Sunucuda Bir Sayfa Bulunamıyorsa Veya Başka Bir Hata oluştuysa Sistem Bir Hata Sayfası Görüntüler,
Bu Hata Sayfalarını Siz İstediğiniz Bir Sayfa İşe Değiştirebilirsiniz.
Yapmanız Gereken Root (Ana Dizindeki) .htaccess Dosyasına Aşşağıdaki Kodu Eklemek.
Not: Hata Sayfa İsimlerini İstediğiniz Gibi Değiştirebilirsiniz Ve / İşaretinden Önce Klasör İsmide Yazabilirsiniz.

Kod:
ErrorDocument 401 /401.php

ErrorDocument 403 /403.php

ErrorDocument 404 /404.php

ErrorDocument 500 /500.php
Bu Şekilde İstediğiniz Dizinde Barındırabilirsiniz Veya Direk Ana Dizinde Bulundurabilirsiniz.

5- İstenmeyen Dosyaları Ayarlamak

Sunucunuzda Çalışmasını İstemediğiniz Dosyaları Ayarlayabilirsiniz.
Örneğin Bir Upload Sisteminiz Vardır Ve Bu Sistemde PHP İle Gerekli Olan Önlemleri Almışsınızdır Fakat Yinede İçiniz Rahat Değildir Bunun İçin Yapmanız Gerekende İstediğiniz Dizindeki .htaccess Dosyasına Aşşağıdaki Kodları Yazmak Olucaktır.
Not: Kodlardaki Uzantıları .uzantı Şeklinde Aralarında Birer Boşlık Bırakaran Yazınız.

Kod:
Options -ExecCGI

AddHandler cgi-script .js .cgi .asp .jsp. htm .exe .sh
6- Domain Yönlendirme

İstediğiniz Dizindeki .htaccess Dosyasına Aşşağıdaki Kodu Ekleyerek O Dizini / Sitenizi İstediğiniz Yeni Bir Siteye Yönlendirebilirsiniz.

Kod:
RewriteEngine On

RewriteRule ^(.*)$ http://www.yenisiteadi.net/$1 [R=301,L]
7- SEO Linkler

Örnekteki .htaccess Komutlarını Root (Ana Dizindeki) Dosyanıza Eklerseniz Seo Sistemi Sağlayabilirsiniz Bunun İçin Scriptinizin Mantığıda Uygun Olmalı.
Örnek Kodlar Aşşağıda.

Kod:
RewriteEngine On

RewriteRule ^konu/([a-z0-9]+)/$ /konu.php?konuadi=$1 [NC,L]

RewriteRule ^listeler/$ /sayfalar/listeler.php [NC,L]

RewriteRule ^ayarlar/$ /sayfalar/ayarlar [NC,L]
8- Hotlink Koruması

Aşşağıdaki Kodu Ana Dizindeki .htaccess Dosyanıza Ekleyin Ve resimler/calinti.png şeklinde bir resim dosyası oluşturup kaydedin Sonrasında Resimleriniz Sizin Siteniz Haricinde Arama Motorları Hariç Görüntülenemez.
Kod:
RewriteEngine On

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?siteadiniz\.net/ [NC]

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !google\. [NC]

RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]

RewriteCond %{HTTP_REFERER} !msn\. [NC]

RewriteCond %{HTTP_REFERER} !yahoo\. [NC]

RewriteRule .*\.(jpe?g|gif|bmp|png|jpg)$ resimler/calindi.png [L]
 

Eklentiler

Son düzenleme:
Geri
Yukarı