java 某个目录白名单_特定目录和文件的Apache动态IP白名单

我试图动态地将IP列入白名单以授予对特定目录的访问权限 . PHP脚本将不断修改whitelist.txt文件以添加/删除条目 .

我知道处理这个的正确方法是使用RewriteMap,但我不知道如何设置它 .

例如,我希望用户在访问example.com时正常访问我的站点,但是我想拒绝访问访问块路径/目录“http://example.com/block " EXCEPT for those IP addresses in whitelist.txt, additionally, those IP addresses in whitelist.txt will only have access to a specific folder and file inside the " block”目录中任何内容的所有用户,请求例如:

我已经尝试了下面的代码(这是一个粗略的草图,它完全是错误的我确信,但只是为了得到这个想法):

RewriteEngine on

RewriteCond %{THE_REQUEST} ^\/block+\ ##apply rules only for /block directory

RewriteMap ipmap txt://var/whitelist.txt

RewriteCond ${ipmap:%{REMOTE_ADDR}} ^\/([0-9]*).txt$ $1 [NC] ##check whitelist for matching IP AND specific dir and file

RewriteRule .* - [F,L]

当然这不起作用 . 当我访问example.com时,我的网站进入无限重定向循环 .

whitelist.txt文件如下所示:

170.172.100.162 123

152.109.211.250 43

62.55.254.83 2345

227.202.162.48 32

203.52.248.55 533

... 等等 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值