我正在尝试快速htaccess阻止除了我的ip之外的所有内容。
我有这个
order deny, allow
deny from all
allow from "MY IP"
“我的IP”是我的IP
我无法看到来自我的ip - 这是正确的方法吗?
答案 0 :(得分:20)
最有效的方法是使用为该任务设计的指令白名单。
Order Allow,Deny
Allow from 123.456.789.123
123.456.789.123是您的静态IP地址。
当使用“Order Allow,Deny”指令时,请求必须与Allow或Deny匹配,如果两者都不满足,则请求被拒绝。
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order
或者你可以像这样使用mod_rewrite。
RewriteEngine On
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.123$
RewriteRule .* - [F]
请注意,如果您已将规则置于此规则之上,则“RewriteEngine On”将是多余的。所以,如果是这种情况,你可以在这里丢弃它。
答案 1 :(得分:7)
您的语法正确:
order deny,allow
deny from all
allow from 127.0.0.1
(注意:IP地址周围没有引号)
如果您认为自己有权访问,则可能需要仔细检查是否使用了正确的IP地址。
例如,检查http://www.whatsmyip.org/ - 也许您和服务器之间有某些东西,比如正在接收的代理,而不是您自己的IP地址。