我有一个网站,我试图设置.htaccess / .htpasswd密码限制,但同时允许任何具有特定IP地址的用户访问。
到目前为止,我已经在我的.htaccess文件中实现了这个,但由于某些原因,这个dosnt工作,如果我访问该网站,无论它允许访问哪个IP地址,如果我注释掉行{{1}在order deny,allow
行之上,密码保护有效,但是会向所有人请求IP,即使是从Allow from 192.87.22.18
IP访问(注意 - 不是我的真实IP)
(由于显而易见的原因,我还没有发布我的.htpasswd文件,但它是包含1个哈希密码的1行)
有什么想法吗?
192.87.22.18
答案 0 :(得分:5)
通过反复试验我最终使用了下面的apache 2.0,取自这里:https://perishablepress.com/htaccess-password-protection-tricks/
在上面的文章中,他们将代码块包装在<IfModule mod_auth.c>
中导致代码无法运行(因为我猜这个服务器上的if块等于false)所以我删除了它们。
# password protect excluding specific ip
AuthName "Username and password required"
AuthUserFile /home/path/.htpasswd
AuthType Basic
Require valid-user
Order Deny,Allow
Deny from all
Allow from 111.222.333.444
Satisfy Any
答案 1 :(得分:1)
4你应该使用:
AuthType Basic
AuthUserFile c:/wamp/www/_test/www/.htpasswd
AuthName "Protected Area"
<RequireAny>
Require ip 127.0.0.1
Require valid-user
</RequireAny>
order
,deny
,allow
现已弃用。