.htaccess htaccess按ip范围访问文件

xfb7svmp  于 2022-11-16  发布在  其他
关注(0)|答案(8)|浏览(152)

如何允许访问文件只有用户的ip是在一个范围内的ip地址?
例如,文件admin.php.,范围从0.0.0.0到1.2.3.4。
我只需要配置访问一个文件,而不是目录。

fhg3lkii

fhg3lkii1#

只需添加FilesMatch或Files指令,将其限制为特定脚本。
以下代码将阻止访问所有以“admin.php”结尾的脚本:

<FilesMatch "admin\.php$">
    Order deny,allow
    Deny from all
    Allow from 10.0.0.0/24
</FilesMatch>

以下代码只会阻止admin.php:

<Files "admin.php">
    Order deny,allow
    Deny from all
    Allow from 10.0.0.0/24
</Files>

有关详细信息,请参阅apache文档中的配置部分。

ffx8fchx

ffx8fchx2#

请查看Allow指令的手册页

Order Deny,Allow
Deny from all
Allow from 10.1.0.0/255.255.0.0

部分IP地址

  • 范例:*
Allow from 10.1
Allow from 10 172.20 192.168.2

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

网络/网络掩码对

  • 范例:*
Allow from 10.1.0.0/255.255.0.0

网络a. b.c. d和网络掩码w. x. y. z。用于更细粒度的子网限制。

网络/nnn CIDR规范

  • 范例:*
Allow from 10.1.0.0/16

与上一个案例类似,不同之处在于网络掩码由nnn个高位1位组成。

bq9c1y66

bq9c1y663#

您不能将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
yebdmbv4

yebdmbv44#

只需对单个IP执行以下操作:

<Limit GET POST>
order deny,allow
deny from all
allow from 1.2.3.4
</Limit>

如果要对10.x.x.x这样的范围执行此操作,请执行以下操作:

<Limit GET POST> 
order allow,deny 
allow from 10
deny from all
</LIMIT>
8oomwypt

8oomwypt5#

如果您使用的是WordPress,那么最好和最简单的方法是安装插件-LionScripts:WordPress IP拦截器从他们的网站http://www.lionscripts.com/ip-address-blocker
他们的专业版有更多的功能,如国家封锁和IP范围封锁,批量csv上传等。

lnlaulya

lnlaulya6#

如果您要提供通配符0.0.255.255

Order allow,deny
# 1.2.0.0 - 1.2.255.255
Allow from 1.2.0.0/16

这将给予从1.2.0.1到1.2.255.254
您也可以check here

avkwfej4

avkwfej47#

我想重定向所有,但cetain IP的维护页面-我们的IP都在同一个网络-以下工作的基础上shamitomar的答案上面:

# TEMP MAINTENANCE PAGE
# MAINTENANCE-PAGE REDIRECT
<IfModule mod_rewrite.c>
 RewriteEngine on
# One address that is on a diffrent network
 RewriteCond %{REMOTE_ADDR} !^xxx\.xxx\.xxx\.xxx
#allow all addresses from our network
 RewriteCond %{REMOTE_ADDR} !^xx\.xxx

#Stuff to allow so that we can show our maintenance page while we work
 RewriteCond %{REQUEST_FILENAME} !(styles|images).+$
 RewriteCond %{REQUEST_URI} !maintenance.html$ [NC]
 RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif|js|css|ttf|woff) [NC] 
 RewriteRule .* /maintenance.html [R=302,L]
</IfModule>
bvn4nwqk

bvn4nwqk8#

Order Deny,Allow
Deny from all
Allow from 311.311.311 322.322.322.322

请参阅answer here

相关问题