我正试图在我的WordPress网站上使用.htaccess阻止一个机器人。
主机名为:ec2-D1-D2-D3-D4.us-east-2.compute.amazonaws.com
其中,D1、D2、D3、D4是1-3位的序列,即[0-9]+将匹配。
在一些情况下只有D1、D2&D3存在。
我正在尝试:
RewriteCond %{HTTP_REFERER} ^ec2-[0-9]+-[0-9]+-[0-9]+.us-east-2.compute.amazonaws.com$ [OR]
RewriteCond %{HTTP_REFERER} ^ec2-[0-9]+-[0-9]+-[0-9]+-[0-9]+.us-east-2.compute.amazonaws.com$
RewriteRule ^.*$ - [F,L]
它似乎不起作用。我错过了什么?
你能试试下面的吗,公平警告还没有测试它,还修复了这里的正则表达式,并且HTTP_REFERER
不直接从hotname开始,所以在这里也删除了主机名之前的^
部分(所有值都是有问题的样本/测试值(。
RewriteEngine ON
RewriteCond %{HTTP_REFERER} ec2-([0-9]+-){1,}[0-9]+.us-east-2.compute.amazonaws.com [NC]
RewriteRule ^ - [F,L]