【问题标题】:.htaccess block all but my ip.htaccess 阻止除我的 ip 之外的所有内容
【发布时间】:2012-12-05 18:22:05
【问题描述】:

我正在尝试做一个快速的 htaccess 来阻止除我的 ip 之外的所有内容。

我有这个

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

“我的IP”是我的IP

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

【问题讨论】:

  • order deny, allow 语法无效,不允许使用空格。 Apache 会产生错误。它应该是order deny,allow,但我无法修复它,因为不允许使用

标签: html apache .htaccess


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

    你的语法正确:

    order deny,allow
    deny from all
    allow from 127.0.0.1
    

    (注意:IP 地址不加引号)

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

    例如,检查http://www.whatsmyip.org/ - 可能您和服务器之间存在某些东西,例如正在获取的代理,而不是您自己的 IP 地址。

    【讨论】:

    • order deny, allow 语法无效,不允许使用空格。 Apache 会产生错误。它应该是order deny,allow,但我无法修复它,因为不允许使用
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-03
    • 2017-03-28
    • 2023-01-07
    • 2014-10-26
    • 1970-01-01
    • 1970-01-01
    • 2014-06-16
    相关资源
    最近更新 更多