我需要一些帮助。
我正在我的服务器上使用apache2.4
。我/
使用以下代码阻止所有请求:
<Location />
Deny from all
AuthUserFile /path/.pass
AuthName "Login"
AuthType Basic
Satisfy Any
require valid-user
</Location>
我之所以使用它,是因为我正在运行一项服务(通过 proxyPass)。使用以下块,我正在index.html
为不通过代理的服务提供服务:
<Location /login>
# needs to come before the ProxyPass directives
ProxyPass !
Require all granted
</Location>
/var/www/html/login
我有一个文件,其中.htaccess
包含:
Require All granted
即使有了这个配置,当我进入时example.com/login
它还是要求我进行身份验证。我这里遗漏了什么?
谢谢大家!
答案1
不要混合使用“旧”和“新”访问指令。这里的问题是您使用了Deny from all
on /
,但Require all granted
使用了 on /login
。由于旧访问指令优先于新访问指令,因此在/login
位置中指定的访问指令不执行任何操作。
使用Require all denied
而不是Deny from all
,它应该可以工作。