Назад | Перейти на главную страницу

htaccess Блокировать доступ к каталогу с двумя исключениями

Я не могу понять, как написать файл .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 директивы).