我正在使用FreeBSD 9.2-RELEASE-p5
以下apache24-2.4.12
包:
[root@j ~]# uname -a
FreeBSD X 9.2-RELEASE-p5 FreeBSD 9.2-RELEASE-p5 #0 r265974: Wed May 14 07:57:04 PDT 2014 root@X:/usr/obj/usr/src/sys/R610 amd64
[root@j ~]# httpd -v
Server version: Apache/2.4.12 (FreeBSD)
Server built: Feb 4 2015 19:03:59
[root@j ~]#
我想使用以下配置阻止 Apache 访问某些网络(118.168.0.0 - 118.171.255.255):
<RequireAll>
Require not ip 118.168-171.0.0/16
Require all granted
</RequireAll>
当我运行语法检查时,我得到以下信息:
[root@j /usr/local/etc/apache24/Includes]# httpd -t
AH00526: Syntax error on line 4 of /usr/local/etc/apache24/Includes/_RequireAll.:
ip address '118.168-171.0.0/16' appears to be invalid
[root@j /usr/local/etc/apache24/Includes]#
如果我不能使用 whois 中定义的范围,那么如何正确确定子网掩码,以便可以在 Apache 的 httpd 中使用它?或者也许我写错了,因为我使用了范围和子网掩码,并且有正确的方法来定义范围。
* 更新 *
[root@j /usr/local/etc/apache24/Includes]# grep 118 _RequireAll.
Require not ip 118.168 118.169 118.170 118.171
[root@j /usr/local/etc/apache24/Includes]# httpd -t
Syntax OK
[root@j /usr/local/etc/apache24/Includes]#
答案1
尝试以下操作
Require not ip 118.168 118.169 118.170 118.171