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

Требовать пользователя на основе URL?

Я хочу потребовать пользователя user1 когда URL-адрес /foo/user1/*, пользователь user2 когда URL-адрес /foo/user2/*и т.п. Можно ли это сделать?

Например, я хотел бы сделать что-то вроде этого:

AliasMatch ^/foo/([^/]+)(/.*)? /home/$1/foo$2
<LocationMatch "^/foo/([^/]+)(/.*)?">
    SSLRequireSSL
    AuthType Basic                                                              
    AuthName "foo"
    AuthUserFile /etc/apache2/htpasswd
    Require user $1
</LocationMatch>

Предполагая файлы в /home/user1/fooX принадлежат user1 вы могли бы рассмотреть mod_authz_owner и использовать Require file-owner.

<Directory /home/*/public_html>
  AuthType Basic
  AuthName "User files"
  AuthUserFile /etc/apache2/htpasswd
  Satisfy All
  Require file-owner
</Directory>