htaccess通过ip范围访问文件

Mir*_*rod 34 php .htaccess

如何只允许文件访问具有IP地址范围的ip用户?

例如文件admin.php.范围从0.0.0.0到1.2.3.4.

我只需要配置访问一个文件而不是目录.

wim*_*vds 45

只需添加FilesMatchFiles指令即可将其限制为特定脚本.

以下将阻止访问以"admin.php"结尾的所有脚本:

<FilesMatch "admin\.php$">
    Order deny,allow
    Deny from all
    Allow from 10.0.0.0/24
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)

以下只会阻止admin.php:

<Files "admin.php">
    Order deny,allow
    Deny from all
    Allow from 10.0.0.0/24
</Files>
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅配置节的apache文档.


Pas*_*Qyy 26

查看Allow Directive的手册页

Order Deny,Allow
Deny from all
Allow from 10.1.0.0/255.255.0.0
Run Code Online (Sandbox Code Playgroud)

部分IP地址

例:

Allow from 10.1
Allow from 10 172.20 192.168.2
Run Code Online (Sandbox Code Playgroud)

用于子网限制的IP地址的前1到3个字节.

网络/网络掩码对

例:

Allow from 10.1.0.0/255.255.0.0
Run Code Online (Sandbox Code Playgroud)

网络abcd和网络掩码wxyz用于更精细的子网限制.

网络/ nnn CIDR规范

例:

Allow from 10.1.0.0/16
Run Code Online (Sandbox Code Playgroud)

与前一种情况类似,除了网络掩码由nnn高位1位组成.


phi*_*hag 10

您无法将IP范围与allow匹配,但您可以使用多个CIDR网络模拟它:

Order allow,deny

# 0.0.0.0 - 0.255.255.255.255
Allow from 0.0.0.0/8

# 1.0.0.0 - 1.1.255.255
Allow from 1.0.0.0/15

# 1.2.0.0 - 1.2.1.255
Allow from 1.2.0.0/23

# 1.2.2.0 - 1.2.2.255
Allow from 1.2.2.0/24

# 1.2.3.0 - 1.2.3.3
Allow from 1.2.3.0/30

# 1.2.3.4
Allow from 1.2.3.4
Run Code Online (Sandbox Code Playgroud)