我的网站在 apache 2.2.3 中运行。网站根目录包含三个目录。我想为这些目录设置身份验证如下
只有user1可以浏览所有页面
user2 只能访问 mydomain.com/dir1/
user3 只能访问 mydomain.com/dir2/
user4 只能访问 mydomain.com/dir3/
我尝试了以下配置,但只有 user1 可以浏览网站,其他用户无法访问网站。
<directory /var/www/html/example>
AuthUserFile /etc/httpd/user1-htpasswd
AuthName "Resricted"
AuthType Basic
Require user user1
</directory>
<directory /var/www/html/example/dir1/>
AuthUserFile /etc/httpd/user2-htpasswd
AuthName "Resricted"
AuthType Basic
Require user user2
</directory>
<directory /var/www/html/example/dir2/>
AuthUserFile /etc/httpd/user3-htpasswd
AuthName "Resricted"
AuthType Basic
Require user user3
</directory>
请指导我。提前致谢。
如果您将所有用户登录信息放在一个密码文件中,然后执行类似的操作(未经测试),它应该可以工作
我只是偶然发现了这个问题并想补充:
通常您不想在require 语句中列出所有用户
要么使用
如果您仍然列出所有用户或将用户添加到组中
为此,您添加声明
groupFile的内容类似于: