- enterId:145603 .htaccess konuları [Parola korumalı dizinler ve dosyalar] « KOODLA | BLOG

.htaccess konuları [Parola korumalı dizinler ve dosyalar]

Date27 / Aralık / 2008 Author İsa Engiz    Category Genel     Tags , , Yorumlar5 Yorum Yapilmis.

.htaccess dosyalarının belki de en çok ihtiyaç duyulan kullanım alanıdır parola korumalı dizinler oluşturma işlemi. “Eski moda” gibi dursa da, hala web geliştiricilerin bazen işine yaramakta ve ihtiyaç duyulmaktadır.

.htaccess dosyası ile bir dizini parola korumalı yapma işleminin iki aşaması vardır.

  1. korumak istediğimiz dizine bir .htaccess dosyası yerleştiririz.
  2. Dizini görüntülemek isteyenlerin girmek zorunda olduğu “kullanıcı ismi” ve “parola” nın yer aldığı bir dosya oluştururuz. Bu dosyanın adı .htpasswd dir.

Bu işlem ile koruduğumuz dizinlere kullanıcı erişmek istediğinde pop-up olarak açılan pencere kullanıcı adı ve parola girmesini isteyecek, yetkilendirme gerçekleşmezse 403 hata sayfasını karşısına çıkaracak.

Birinci aşama: .htaccess dosyası

Birinci aşamada .htaccess dosyamızı oluşturalım. İçeriği şu şekilde olacak:

AuthName "Lutfen kullanici adi ve parolanizi giriniz:"
AuthUserFile /guvenlidizin/.htpasswd
AuthType Basic
require valid-user

Bu dosyanın içeriğini şu şekilde açıklayabiliriz: İlk satırda kullanıcının karşısına çıkan pop-up pencerenin kullanıcıya mesajını yazıyoruz, ikinci satırda .htpasswd dosyasının hangi dizinde bulunduğunu belirtiyoruz, korumak istediğimiz dizinin içerisinde olmasına gerek yok, hatta o dizinin içerisinde olmamalı. .htpasswd dosyasının bulunması gereken yer, /www dizinin üzeridir, burada olması daha güvenlidir. 3. satırda yetkilendirme işleminin tipini, 4. satırda ise hangi açıdan yetkilendirme yapacağını belirtiyoruz.

İkinci aşama: .htpasswd dosyası

Bu aşamada oluşturacağımız .htpasswd dosyasının içeriği şu şekilde olacak:

isa:oYBf88gdB5f5o
isa2:JyVzUTcfnc.WQ

Bu dosyanın içeriğinde ise kullanıcı adı ve parolası yer alıyor: kullanıcı:parola. Her satırda bir kullanıcı yer almakta. Dolayısıyla bizim işlemimizde tanımlı olan 2 kişi var, isa ve isa2. yalnızca bu kişiler giriş yapabilecek.

Peki parolalar biraz garip değil mi? Evet, garip, çünkü bunlar şifrelenmiş hali. Unix-Linux sistemlerde .htpasswd dosyasına parolanızı şifrelenmiş olarak yazmak zorundasınız. Örneğin yukarıda isa2 kullanıcısının parolası isa2 ancak şifrelenmiş hali ise JyVzUTcfnc.WQ.

Önemli Noktalar

Öncelikle şunu belirmekte fayda var, .htpasswd dosyasını, herkesin erişebileceği bir dizine koymamalısınız, sitenizin ana dizinin üstünde yeralmalı. (www ya da public_html diziniin içerisinde yeralmamalı.) Eğer siteniz linux sunucuda /home/site/ dizininde yer alıyorsa ve sitenizin www klasörü /home/site/www/ şeklinde ise, .htpasswd dosyası /home/site/.htpasswd şeklinde yerleştirilmeli.

.htaccess dosyasında require valid-user nasıl yetkilendirme yapacağını yazdık, burada, .htpasswd dosyasında adı bulunan tüm kullanıcılar, doğru parolayı girdiklerinde, ilgili dizini görüntülemek için yetkilendirilmiş olacaklar. .htpasswd dosyasında yer alan kullancılardan sadece isa’nın giriş yapabilmesini isteseydik, “require user isa” şekilnde yazacaktık kodumuzu.

.htpasswd dosyasında parolamızı nasıl şifreleyeceğiz? Bunun için internette pek çok araç bulunmakta, bazıları: http://www.4webhelp.net/us/password.php , http://www.euronet.nl/~arnow/htpasswd/ , http://www.sherylcanter.com/encrypt.php veya http://css.psu.edu/publish/htpasswd/htpasswd.html adreslerindeki araçlar kullanılabilir.

Sadece belirli dosyaları korumak

Şu ana kadar oluşturduğumuz .htaccess dosyası ile bütün dizine erişim için yetkilendirme gerçekleştirilmesini istedik, ancak sadece belirli dosyalara erişimi de kısıtlayabiliriz. Bu durumda kullanıcılar dizinde gezebilecekler ve sadece bizim belirlediğimiz dosyaları görmek istediklerinde yetkilendirme pop-up penceresi açılacak.

Bu durumda kullanacağımız kod aşağıdaki gibi olacak:

AuthName "Lutfen kullanici adi ve parolanizi giriniz:"
AuthUserFile /guvenlidizin/.htpasswd
AuthType Basic
<files dosya1>
require valid-user
</files>
<files dosya2>
require valid-user
</files>
<files dosya3>
require valid-user
</files>

Sonuç

.htaccess dosyaları ile dosya ve dizinleri koruma işlemi bu şekilde gerçekleşmekte, siz de dosya veya dizinleri parola korumalı yapmak istediğinizde hızlı şekilde bu methodu kullanarak işlemi gerçekleştirebilirsiniz.

bir sonraki .htaccess yazısında görüşmek üzere!

Bütün .htaccess Yazıları

.htaccess konuları [Giriş]
.htaccess konuları [Hataları Yönlendirme]
.htaccess konuları [IP Engelleme]
.htaccess konuları [Dizinlerin varsayılan dosyalarını değiştirme]
.htaccess konuları [Parola korumalı dizinler ve dosyalar]
.htaccess konuları [Yönlendirme]
.htaccess konuları [Dinamik bağlandı (hotlink) engelleme]
.htaccess konuları [kötü örümcekleri engelleme]
.htaccess konuları [İşaretçi siteye göre engelleme]
.htaccess konuları [Kapanış]

- Bu blogda yer alan yazıları RSS ile takip edebilirsiniz. RSS aboneliği için tıklayın.

- Ya da bu blogda yer alan bütün yazıları içindekiler sayfasında görüntüleyebilirsiniz. Tıklayın!

.htaccess konuları [Parola korumalı dizinler ve dosyalar] yazısına 5 Yorum yapılmış.

  • KOODLA | BLOG » genel » .htaccess konuları [kötü örümcekleri engelleme] 08 Şubat 2009, 12:01

    [...] [IP Engelleme] – .htaccess konuları [Dizinlerin varsayılan dosyalarını değiştirme] – .htaccess konuları [Parola korumalı dizinler ve dosyalar] – .htaccess konuları [Yönlendirme] – .htaccess konuları [Dinamik bağlandı (hotlink) engelleme] [...]

  • KOODLA | BLOG » genel » .htaccess konuları [Dizinlerin varsayılan dosyalarını değiştirme] 08 Şubat 2009, 12:03

    [...] [IP Engelleme] – .htaccess konuları [Dizinlerin varsayılan dosyalarını değiştirme] – .htaccess konuları [Parola korumalı dizinler ve dosyalar] – .htaccess konuları [Yönlendirme] – .htaccess konuları [Dinamik bağlandı (hotlink) engelleme] [...]

  • KOODLA | BLOG » genel » .htaccess konuları (dinamik bağlantı [hot link] engelleme) 08 Şubat 2009, 12:03

    [...] [IP Engelleme] – .htaccess konuları [Dizinlerin varsayılan dosyalarını değiştirme] – .htaccess konuları [Parola korumalı dizinler ve dosyalar] – .htaccess konuları [Yönlendirme] – .htaccess konuları [Dinamik bağlandı (hotlink) engelleme] [...]

  • KOODLA | BLOG » genel » .htaccess konuları [IP Engelleme] 08 Şubat 2009, 12:04

    [...] [IP Engelleme] – .htaccess konuları [Dizinlerin varsayılan dosyalarını değiştirme] – .htaccess konuları [Parola korumalı dizinler ve dosyalar] – .htaccess konuları [Yönlendirme] – .htaccess konuları [Dinamik bağlandı (hotlink) engelleme] [...]

  • emin 12 Şubat 2009, 18:35

    keşke bir kısa videoyla örnek uygulama yapsaymışsın. Çok daha anlaşılır olurdu. En azından kendi adıma bunu çok istiyorum.

Arama


E-Posta Aboneliği


RSS Aboneliği

En Çok Yorumlanan Yazılar

Etiketler

404 ajax apache arama butonu as astrofizik açık kaynak banner blogger blogger/blogspot Blogger / Blogspot blogspot case chmod css date dosya yükleme editör etiket etkinlik favicon featured form ftp galeri Genel gimp hata sayfası header htaccess htpasswd ilişkisel veritabanı index innodb javascript join JQuery kategori koodla linux mysql opacity php resim url

Son Yorumlar

  • Murat: Güzel bir teknik, şu ana kadar sınırsız alt kategori lazım olmadı ama olmayacağı anlamına gelmiyor :)
  • iilyas: Bu kodlar çalışmıyor arkadaşım. Localde olduğu içinmi acaba ?
  • iilyas: Arkadaşım çok teşekkür ediyorum. Harika anlatmışsın ajaxla çalışmalara başlamak lazım estetik açısından.....
  • Nuri: bende bu şekilde bir çalışma yaptım ancak bir sorunum var ne yaptıysam url den index.php bölümünü kaldıramadım....
  • Kemal: Makale için çok teşekkürler, resimleri div tagları ile yapabilirmiyiz. Bu arada imagelara link verirsek daha...

Sayfalar


Faydalı Bağlantılar