【问题标题】:IP restrict a subdomain using .htaccessIP 使用 .htaccess 限制子域
【发布时间】:2012-03-07 18:25:34
【问题描述】:

我想根据我的 htaccess 文件中的 URL 添加 IP 限制。 这样我可以将我的 .htaccess 文件保存在我的 git repo 中,并使用 dev.domain.com 的开发分支和 www.domain.com 上的实时网站的主分支。

我需要 1 个 htaccess,因为开发站点是实时站点的副本。在开发网站上,我想有 IP 限制。所以我需要 1 个在两个环境中看起来相似的 htaccess,但限制的行为只在 dev uri 上起作用。

我怎样才能做到这一点?

提前致谢。

【问题讨论】:

  • 什么样的限制,会怎么做?
  • 我需要 1 个 htaccess,因为开发站点是实时站点的副本。在开发网站上,我想有 IP 限制。所以我需要 1 个在两个环境中看起来相似的 htaccess,但限制的行为只在 dev uri 上起作用。

标签: .htaccess subdomain


【解决方案1】:
order deny,allow
allow from 31.24.232.0/21
allow from 127.0.0.0/20
allow from 192.168.0.0/20
deny from all

您可以将其放在子域文档根目录的.htaccess 中。但记得更改 IP。

【讨论】:

  • 要阻止一个 IP 而不是一个范围,使用/32,例如127.0.0.1/32
  • 这不能回答我的问题。如果我想要我的实时环境的完整副本,我不能使用第二个 .htaccess。这就是为什么我希望有 1 个 htaccess 文件,其中包含一个“开关”来根据访问 URI 打开限制。
  • @hp 好吧,那是因为您的问题非常模糊 - Deatjh 显示的是“限制”来自 IP 的访问。您刚才在评论中所说的内容使您的需求更加清楚。考虑将其编辑到问题中。
  • 我不知道任何基于主机名限制的指令(在.htaccess
  • @Pekka 你是绝对正确的(在重读原始问题时,我看到了我留下的空白)。
【解决方案2】:

这就是为什么我希望有 1 个 htaccess 文件,其中包含一个“开关”以根据访问 URI 打开限制。

我一直在寻找同样的东西,但实际上似乎不太可能。 Apache 的配置语言知道一些条件块,但据我所知,没有一个可以做到这一点。

我经常做的是在开发服务器和生产服务器上指定两个不同的AccessFileName 属性。例如,在开发服务器上,我会设置

AccessFileName .htaccess.local

然后开发服务器规则将进入.htaccess.local,生产服务器规则进入? htaccess.

【讨论】:

    猜你喜欢
    • 2014-11-07
    • 2010-10-10
    • 2014-02-11
    • 2015-10-07
    • 2014-09-11
    • 2014-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多