5

Можно ли защитить паролем виртуального каталога (например, WordPress категории):Пароль защищает виртуальный каталог? - .htpasswd/.htaccess

/c/sofas/ 

Похоже <Location /c/sofas/> будет работать в httpd_config, но не .htaccess

Является Возможно? Возможно, где-то с mod_rewrite?

+1

AFAIK нет, но это не имело бы смысла: либо, увидев, что злоумышленник может просто вычислить реальный URL-адрес заново перезаписанного, и получить доступ к нему. (Возможно, если вы отредактируете в своем конкретном случае использования, кто-то может придумать альтернативное решение) –

+2

Ознакомьтесь с http://stackoverflow.com/questions/12203989/htaccess-mod-rewrite-and-basic-authentication –

+0

Pekka - пример ниже - прекрасный пример, к которому также относится Джеймс Холлвелл. Это в WordPress-подобной системе - они не могут получить доступ к содержимому, принятому по этому URL-адресу. –

ответ

11

К сожалению, директива <Location> не допускается в .htaccess.

Но есть альтернативное опрятное решение с использованием mod_setenvif.

# set env variable SECURED if current URI is /c/sofas/ 
SetEnvIfNoCase Request_URI "^/c/sofas/" SECURED 

# invoke basic auth is SECURED is set 
AuthType Basic 
AuthName "My Protected Area" 
AuthUserFile /full/path/to/passwords 
Require valid-user 
Satisfy any 
Order  allow,deny 
Allow from all 
Deny from env=SECURED 
+0

Меня просто предупредили, что есть странная ошибка. Если вы нажмете «Отменить», он по-прежнему загружает страницу. Знаете ли вы, чтобы это не произошло? –

+0

Хорошо, позвольте мне попытаться воспроизвести его. – anubhava

+1

Извините, у меня был «разрешить, запретить». Попробуй это сейчас. – anubhava

Смежные вопросы