Windows Server 2003 R2 Standard x64 Edition с пакетом обновления 2, Apache 2.4.4, PHP 5.4.16 (x86)
Большинство моих каталогов содержат файл index.php, который я настроил как DirectoryIndex, используя файл httpd.conf.
Вот текст из моего файла httpd.conf
DocumentRoot "c:/wamp/www"<Directory "c:/wamp/www">
Options -Indexes
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<Directory "C:/wamp/www/subdirectory">
Options -Indexes
DirectoryIndex index.php
Order deny,allow
Allow from all
</Directory>
<Files "index.php">
AuthType Basic
AuthName "srvname"AuthUserFile "C:/wamp/.htpasswd"Require valid-user
Order deny,allow
Allow from all
</Files>
Приведенная выше конфигурация приводит к и то и другое servername / subdirectory / index.php и servername / index.php, запрашивая имя пользователя и пароль.
Попытка получить более конкретную информацию с помощью директивы Files, как показано ниже, приводит к ни имя_сервера / подкаталога / index.php или имя_сервера / index.php запрашивают пароль.
<Files "C:/wamp/www/index.php">
AuthType Basic
AuthName "srvname"AuthUserFile "C:/wamp/.htpasswd"Require valid-user
Order deny,allow
Allow from all
</Files>
Все, что я действительно пытаюсь сделать, это защитить паролем мою страницу конфигурации WampServer. Может кто-нибудь сказать мне, как использовать директиву Files в httpd.conf специально для C: /wamp/www/index.php, не блокируя ВСЕ мои страницы index.php?
Проверьте ваш файл apache.conf, он должен иметь это:
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy all
</Files>
Это то, что скрывает файлы, начинающиеся с «.ht» везде.
Других решений пока нет …