我有多个目录,如下所示:
root
- directory 1
- directory 2
- directory 3
- sub directory 1
- sub directory 2
- sub directory 3
Root现在使用.htaccess保护,
我要做的是使用不同的用户名/密码保护子目录1,2和3
可以这样做吗?如果是这样的话?
现在我的.htaccess文件位于目录3中,如下所示:
AuthUserFile path/path/path/sub directory 1/ .htpasswd
AuthUserFile path/path/path/sub directory 2/ .htpasswd
AuthUserFile path/path/path/sub directory 3/ .htpasswd
AuthName "Please Log In"
AuthType Basic
require valid-user
然而它不起作用......并且我正在获取内部错误服务器
答案 0 :(得分:3)
每个子目录中都需要一个单独的htaccess文件,指向特定的htpassword文件。你不能分开哪些子目录使用你的htaccess中的htpasswd文件。
另外,不要在页面中留空格,apache会认为你指的是指令的多个参数。
因此,在每个子目录的htaccess文件中,尝试类似:
AuthUserFile .htpasswd
AuthName "Please Log In"
AuthType Basic
require valid-user
但请注意,将您的密码文件保留在webroot中通常是一个非常糟糕的主意,允许人们下载它。