Apache 2.4 结合了特定位置的 Require ip 和 Require not ip

问题描述 投票:0回答:1

我正在尝试配置我的 apache 以限制对特定 url 的访问,但特定范围内的所有 ip 除外,但有一些例外。

我的想法如下:

<Location "/uebung3">
Require ip 123.1.0.0/16
Require not ip 123.1.1.0/24
Require not ip 123.1.3.0/24
Require not ip 123.1.5.128/25
Require not ip 123.1.7.0/24
Require not ip 123.1.11.0/24
Require not ip 123.1.12.0/24
</Location>

但是,由于某种原因,这不起作用,因为要求似乎没有生效。

当我重新启动 apache 时,出现错误

negative Require directive has no effect in <RequireAny> directive

我是否遗漏了有关订单的内容?或者是否根本没有办法使用 require 不从先前的过滤器中排除某物?

apache
1个回答
0
投票

没有,这有点陈旧(8个月)。但自从我正在研究这个问题以来,我来到这里并注意到它与此有关:

“当在单个配置节中使用多个 Require 指令并且不包含在另一个授权指令(如 )中时,它们将隐式包含在指令中。因此,第一个授权用户的指令将授权整个请求,并且后续的 Require 指令将被忽略.”

来自 apache 2.4 手册...语法默认为 RequireAny,逻辑上 Require [not] 不起作用。

有一个学习曲线,但我比旧的允许拒绝指令更喜欢这个。这是我看到的地方:https://httpd.apache.org/docs/2.4/mod/mod_authz_core.html#require

继续摇滚

© www.soinside.com 2019 - 2024. All rights reserved.