Я не могу понять, как написать файл .htaccess, который блокирует весь доступ к каталогу, кроме чтения html-файлов, которые могут быть разрешены, и php-файлов, требующих аутентификации. Запрет доступа и разрешение html работает нормально, но запрос пароля для php-файлов - нет.
Вот что я придумал:
<FilesMatch ".*\.php$">
AuthName "Test area"
AuthUserFile /var/www/.htpasswd
AuthType Basic
require valid-user
</FilesMatch>
<FilesMatch "\.html?$">
Order Allow,Deny
Allow from All
</FilesMatch>
order Allow,Deny
Deny from ALL
Спасибо,
AC
Я думаю пройти аутентификацию или авторизации вместо обоих, вам понадобится Satisfy Any
(по умолчанию Satisfy All
)
Order deny,allow
Deny from all
<FilesMatch "\.php$">
Satisfy Any
AuthName "Test area"
AuthUserFile /var/www/.htpasswd
AuthType Basic
require valid-user
</FilesMatch>
<FilesMatch "\.html?$">
Allow from All
</FilesMatch>
Примечание: для Apache> = 2.4 этот метод устарел (см. Новый <Require(All|None|Any)>
и Require
директивы).