HTTP Doğrulamasında Boş Alan Yaratmak
06 Mart 2009 Cuma, 00:06 | GezegenHTTP doğrulama işlemi, hızlı bir biçimde bir web sitesindeki bir dizini ve tüm alt dizinlerini isim/parola korumasına almak için biçilmiş kaftan. Kimlerin giriş yapabileceğini tanımlıyorsunuz ve sadece onlar girebiliyor.
Peki ya bir dizine HTTP doğrulama yöntemi isim/parola girerek ulaşılmasını istiyorsanız ama alt dizinlerinden birine parolasız herkesin girebilmesini istiyorsanız ne olacak? Bugün bu sorunun yanıtını buldum.
Doğrulama işlemi Apache ayarlarında kullanılan Require ifadesi ile gerçekleşiyor. Alternatif bir engelleme metodu ise Allow ifadesi. Bir dizin üzerinde iki yöntemi birden kullandığınızda, ek bir ayar daha devreye giriyor — Satisfy. Satisfy ile de hem Require hem Allow mu geçerli olsun, yoksa ikisinden biri geçerli olsa yeterli mi (and/or) tanımlayabiliyorsunuz.
Bu durumda tek yapmanız gereken, Require ile korumaya aldığınız dizinin, serbestçe girilmesini istediğiniz alt dizininin tanımına (ya da htaccess dosyasına);
Satisfy any Allow all
satırlarını yerleştirmek. “Allow all” herkesin girebilmesini sağlıyor, “Satisfy Any” yazmak da, “Require” ya da “Allow” ifadelerinden herhangi birinin geçerli olması bu dizinin görülebilmesi için yeterli anlamına geliyor. Böylece herkes dizini görebilir hale geliyor :)