2011-10-05 14 views
36

Bu yüzden bir URL'ye erişimi kısıtlamak istiyorum. Şimdi belirli bir IP adresinden geliyorlarsa, bir parola istenmemeleri gerekir. Eğer bir givin IP adresinden gelmiyorlarsa, bir parola istenmelidir.htaccess - parola kullanarak VEYA ip beyaz listesi

böylece bir ya da bir:

AuthUserFile /some/path/.htpasswd 
AuthName "Please Log In" 
AuthType Basic 
require valid-user 

ve:

order deny,allow 

deny from all 
allow from x.x.x.x 

cevap

60

Apache "Satisfy" yönergesini kullanabilirsiniz. şifresiz

AuthType Basic 
AuthName "Please Log In" 
AuthUserFile /some/path/.htpasswd 
Require valid-user 
Order deny,allow 
Deny from all 
Allow from 127.0.0.1 
Satisfy any 

Erişim yalnızca 127.0.0.1 den izin verilir: Burada

kullanmadan bir örnektir.

Bu yardımcı olur umarım. Apache 2.4 Satisfy ile

+0

+1 listeleyebilirsiniz. Ayrıca, bazı dizinlerdeki denetimleri (ör., Bazı public /) devre dışı bırakmak isterseniz, sadece subdir '.htaccess ': – pwes

+0

' Tümünden izin ver ve 'İstediğinizi' yerine getir ' – pwes

+0

@Bob: Çalışıyor mu? – FbnFgc

4

hala mevcuttur, ancak sağladığı deprecated

Not

direktifleri mod_authz_host tarafından kullanımdan kaldırıldı mod_access_compat. Sipariş, İzin Ver veya Reddet gibi eski yönergelerin Require gibi yenileriyle karıştırılması teknik olarak mümkün ancak cesareti kırılmış. Bu modül, 2.4 yükseltmeyi kolaylaştırmak için yalnızca eski yönergeleri içeren yapılandırmaları desteklemek için oluşturulmuştur. Daha fazla bilgi için lütfen yükseltme kılavuzunu kontrol edin. Senin durumunda Allow from 1.2.3.4 yılında


Authorization Containers yapılabilir Require birkaç s (Require valid-user ve Require ip gibi) birleştiren Require ip 1.2.3.4

ile değiştirilir. Müşterinin ya bir parola sağlaması ya da belirli bir IP adresinden gelmesi gerektiğini söyleyerek, yönergeleri çevreleyen RequireAny, örn.

<RequireAny> 
    Require valid-user 
    Require ip 1.2.3.4 
</RequireAny> 

, bu çoklu gerektir direktifleri tek bir yapılandırma bölümünde kullanılan ve <RequireAll> gibi başka yetkilendirme yönergede yer almayan zaman Require

sonunda açıklandığı gibi özel bir durum olmasına rağmen, Bunlar, bir <RequireAny> yönergesi içinde gizli olarak yer almaktadır. Bu nedenle, bir kullanıcının yetkilendirdiği ilk kişi, tüm talebi onaylar ve ardından Talep yönergeleri göz ardı edilir. Başka bir deyişle

, RequireAny burada isteğe bağlıdır ve sadece bu yaptığım tam olarak

Require valid-user 
Require ip 1.2.3.4 
İlgili konular