我已为我的网站启用了htpasswd身份验证,因此该网站需要访问用户名/密码。现在我需要允许一个没有身份验证的URL,当我在virtualhost中使用“Satisfy any”指令时,整个网站都不会进行身份验证。我的配置如下,
<Directory “/home/website/docroot”>
SetEnvIf Request_URI “^/source/notification/notify$” NOPASSWD=true
Order allow,deny
Allow from all
AuthType Basic
AuthName “Restricted Access”
AuthBasicProvider file
AuthUserFile /etc/httpd/htpassword
Require valid-user
AllowOverride all
Allow from env=NOPASSWD
Satisfy any
</Directory>
我的配置有问题吗?
答案 0 :(得分:0)
你的街区中有Allow from all
。满足任何要么是或。意味着满足任何要求。试试这个,看看它是如何工作的。
<Directory "/home/website/docroot">
SetEnvIf Request_URI "^/source/notification/notify$" NOPASSWD
AuthType Basic
AuthName "Restricted Access"
AuthUserFile /etc/httpd/htpassword
Require valid-user
Order deny,allow
Deny from all
Allow from env=NOPASSWD
Satisfy any
AllowOverride all
</Directory>