Właśnie uaktualniłem Apache z wersji 2003, do nowej wersji 2.4.1. Wszystko wydaje się całkiem dobre, z wyjątkiem jednej rażącej rzeczy:
W moim pliku httpd.conf mam następujące elementy:
<Directory />
AllowOverride none
Options FollowSymLinks
AuthType Basic
AuthName "Enter Password"
AuthUserFile /var/www/.htpasswd
Require valid-user
</Directory>
Powinno to pozwolić tylko użytkownikom z określonego pliku uwierzytelniania na dostęp do serwera - tak jak miało to miejsce w starszej wersji Apache. (Dobrze?)
Jednak to nie działa. Żądania są przyjmowane bez uwierzytelnienia. Kiedy przełączam rejestrowanie na LogLevel Debug, w celu uzyskania dostępu, mówi:
[Sat Mar 24 21:32:00.585139 2012] [authz_core:debug] [pid 10733:tid 32771] mod_authz_core.c(783): [client 192.168.1.181:57677] AH01626: authorization result of Require all granted: granted
[Sat Mar 24 21:32:00.585446 2012] [authz_core:debug] [pid 10733:tid 32771] mod_authz_core.c(783): [client 192.168.1.181:57677] AH01626: authorization result of <RequireAny>: granted
Naprawdę nie wiem, co to oznacza - i (o ile wiem) nie mam żadnych oświadczeń „Wymagaj wszystkich przyznanych” ani „” w żadnym z moich plików.
Wszelkie pomysły, dlaczego to nie działa, lub gdzie debugować?
AKTUALIZACJA:
Mam wirtualny host na porcie SSL, który umożliwia proxy. Kiedy umieszczam te same wpisy w
<proxy *>
klauzula w konfiguracji virtualhost, to działa . Wydaje się, że nie działa w
<Directory>
klauzula. Próbowałem następnie wprowadzić inne klauzule katalogu (specyficzne dla innych katalogów) i to też nie działało.
RÓWNIEŻ
Z poniższych pytań Shane'a - próbowałem zduplikować główny blok „/” do katalogu „/ tmp”. Katalog / tmp działa PRAWIDŁOWO !! Więc - ten problem dotyczy tylko katalogu głównego?
<Directory>gdzieś w twojej konfiguracji Apache jest bardziej konkretny blok, który ma pierwszeństwo przed tym, który ustawiłeś /.
<Directory>bloki stosujesz do niedziałających żądań?