我正在尝试从Apache 2.2迁移到2.4 . 我遇到的一个问题是让我的.htaccess文件中的一个像2.2中一样工作 . 基本上我要做的是允许我的所有服务器在没有密码的情况下访问网站,然后当有人不在我的网络或我们的某个桌面上试图访问它时需要一个简单的密码 . 以下陈述来自2.2并按预期工作 . deny语句是允许来自组内的IP的子集 .
AuthType Basic
AuthName "Dev password"
AuthUserFile /path/.htpass
Require user devuser
order allow,deny
allow from xxx.xxx.xx.x/24 xxx.xxx.xx.x/16 xxx.xxx.xxx.x/24
deny from xxx.xxx.xxx.xxx/25
Satisfy any
然而,这就是我认为我会在2.4中做同样的事情,但我无法让它工作:
RequireAny
RequireAll
RequireAny
Require ip 10.0
Require ip 192.168.0
/RequireAny
RequireNone
Require ip 10.0.10
Require ip 192.168.0.128/25
/RequireNone
/RequireAll
AuthType Basic
AuthName "Dev password"
AuthUserFile /path/.htpass
Require user dev
/ RequireAny
有人能告诉我我做错了什么吗?它不是从我的桌面请求身份验证 .
对不起,它没有显示我的标签为requireall和requireany . 所以我没有标记它们 .
1 回答
你好像做得对 . 为authz启动LogLevel:
并查看每次点击记录的内容 . 例如,它可能像IP范围规范中的拼写错误一样愚蠢 .