我们有一个PHP网站:
site.com
我们希望来自root的所有子路径都需要基本身份验证。例如
site.com - 无需身份验证
site.com/subpath需要身份验证
我们有这个指令:
<LocationMatch "^/.+$">
AuthName "members Only"
AuthType Basic
AuthBasicProvider file
AuthUserFile /Applications/MAMP/conf/apache/extra/auth-pass-file
Require valid-user
</LocationMatch>
但是,当我们转到http://site.com/或http://site.com时,它会要求输入密码。
有人可以建议一个解决方案,只要求授权子路径吗?
答案 0 :(得分:0)
<LocationMatch "^/.*/.+$">
应该有效。您的LocationMatch实际上是在根目录中选择所有内容,您需要向下一级。
答案 1 :(得分:0)
我们添加了要检查的特定目录(存在的目录),并在人们尝试捕获不存在的页面时创建了错误重定向。
答案 2 :(得分:0)
因为authz规则不仅适用于实际请求的/,而且适用于扩展到的内容 - 例如/index.html
不幸的是,您需要单独允许...