.htaccess - I: Dizin ve Dosya İşlemleri
.htaccess süper bir şey. Ne olduğunu nasıl yaptığını vs. anlatmadan örnekler vererek direkt balıklama atlayacağım konuya
Bu örnekler ihtiyaç duyup aradığımız ama çoğu zaman nasıl yapıldığını bulamadığımız sorunlarımıza yönelik olacak. Bu .htaccess yazı dizisinin ilki de dosya ve dizin işlemlerine yönelik olacak. Aşağıdaki kodlar test edildi onaylandı
Bir dizine girilmesini engellemek
Aşağıdaki kodu istediğiniz dizinde bir .htaccess dosyası oluşturup içine yapıştırın. O dizine web’ten girmeye çalıştığınızda, browser artık 403 Forbidden hatası verecektir.
Order Deny, Allow
Deny from all
Bir dizindeki belli dosya türlerinin görüntülenmesini engellemek
Diyelim ki CSS ve imaj dosyalarınız /images/ adlı bir dizin altında duruyor. Bu imaj dosyalarınızın /images/design.jpg vb. biçimde o dizin altından görüntülenmesini engellemek istiyorsunuz. Bunu yapmak için o dizin altına oluşturacağınız .htaccess dosyasına aşağıdaki kodu ekliyorsunuz:
<FilesMatch "\.(gif|jpe?g|png|bmp|css)$"> Order Deny, Allow Deny from all </FilesMatch>
Aşağıdaki kod da inc, txt, sql ve ini uzantılı dosyaların çağrılmasını ve görüntülenmesini engelleyecek.
<FilesMatch "\.(inc|txt|sql|ini)$"> Deny from all </FilesMatch>
.htaccess dosyasının görüntülenmesini engellemek Bu dosya webten çağrılması veya görüntülenmesi genellikle default olarak apache ayarlarından engellenmiştir ama gene de eşeğinizi sağlam kazığa bağlamak isterseniz:
<Files .htaccess> Order Allow, Deny Deny from all </Files>
Belli dosyalarınızın başka bir siteden çağrılmasını engellemek (hot link)
Diyelim ki sitenizde bazı fotoğraflar var. Bu fotoğraflardan birini başka bir site kendisi host edip link vermektense direkt olarak sizin sitenize link vererek kullanıyor ve dolayısı ile sizin bant genişliğinizden (bandwith) yiyor. Bunu engellemek için:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_REFERER} .
RewriteCond %{HTTP_REFERER} !^http://(www\.)?alanadiniz\.com(/.*)?$ [NC]
RewriteRule \.(gif|jpe?g|bmp|png)$ - [F,L]
Yukarıda alanadiniz.com bölümünü gerçek alan adınızla ve uzantısıyla değiştirmeyi unutmayın.
İlk örneklerimiz şimdilik bunlar. Bu yazı dizisine örneklerle devam edeceğim.
Soru, yorum ve önerileriniz için yorum formunu kullanabilir veya iletişim sayfasındaki bilgilerden bana ulaşabilirsiniz…