14

我正在尝试快速进行 htaccess 以阻止除我的 ip 之外的所有内容。

我有这个

    order deny, allow
    deny from all
    allow from "MY IP"

“我的IP”是我的IP

我看不到我的 ip - 这是正确的方法吗?

4

2 回答 2

22

最有效的方法是使用为该任务设计的指令将自己列入白名单。

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”将是多余的。因此,如果是这种情况,您可以在这里丢弃它。

于 2012-12-18T17:53:29.427 回答
7

你有正确的语法:

order deny,allow
deny from all
allow from 127.0.0.1

(注意:IP 地址周围没有引号)

如果在您认为您应该有权访问时被拒绝,您可能需要仔细检查您使用的 IP 地址是否正确。

例如,检查http://www.whatsmyip.org/ - 也许你和服务器之间有一些东西,比如正在接收的代理,而不是你自己的 IP 地址。

于 2012-12-18T14:13:37.190 回答