Mar*_*tin 18 apache authentication
我需要在公共使用网站时应用HTTP auth,但我不在我的localhost上应用它.这是.htaccess
我认为应该工作的.但它不起作用 - 它仍然要求我用户/通行证.
我究竟做错了什么?
SetEnvIf Remote_Addr ^127\.0\.0\.1$ develmode
<IfDefine !develmode>
AuthType Basic
AuthName "ADMIN"
AuthUserFile /path/to/.htpasswd
Require valid-user
</IfDefine>
Run Code Online (Sandbox Code Playgroud)
mod_setenvif
当然是启用的.
Mar*_*555 27
您需要查看order
和satisfy
关键字.我网站上的工作示例如下.首先,我们告诉我们接受IP或USER.然后我们定义htpasswd文件路径,并接受该文件中的任何有效用户.最后,我们定义哪些客户端IP地址可以访问我们的网站而不使用auth(我们拒绝所有其他IP,因此他们必须通过htpasswd进行身份验证).
# permit by USER || IP Satisfy any # USER AuthUserFile /var/www/munin/.htpasswd AuthGroupFile /dev/null AuthName "Password Protected Area" AuthType Basic require valid-user # IP order deny,allow deny from all allow from 11.22.33.
Fab*_*ler 20
在Apache 2.4中allow
,deny
并且satisfy
不再使用,require
现在也完成IP地址限制:
AuthUserFile /path/to/.htpasswd
AuthName "Restricted Access"
AuthType Basic
Require ip 127.0.0.1
Require valid-user
Run Code Online (Sandbox Code Playgroud)
如果满足任何"Require"指令,则允许该请求.如果您想要两者,请将它们<RequireAll>
分组.
对于本地访问的限制,您可以使用特殊语法Require local
而不是Require ip 127.0.0.1
阅读更多: http ://httpd.apache.org/docs/2.4/mod/mod_authz_core.html#require
归档时间: |
|
查看次数: |
17407 次 |
最近记录: |