为链接中的任意数字创建通配符以阻止htaccess



有人在我的网站上尝试一些糟糕的东西,我厌倦了阻止他使用的IP。因此,我想阻止他一起执行代码,并将任何此类尝试重定向到本地服务器。为此,我在.htaccess: 中使用以下条件

RewriteCond %{QUERY_STRING} ^id=http://213.246.61.125:2082/index.html$ [NC] RewriteRule page.php http://127.0.0.1/index.php? [NS,S,L]

现在,事情正在从许多不同的IP尝试这一点,这个index.html也托管在这些IP上。所以我想做一个通配符,这样无论index.html之前的IP是什么,尝试它的人都会被重定向到他的本地服务器。我不知道该怎么做。我不能像在其他地方(34.5.*.*)那样使用IP通配符,因为这是一个链接。所以我想我必须使用这样的东西:

RewriteCond %{QUERY_STRING} ^id=http://([0-9]).([0-9]).([0-9]).([0-9]):2082/index.html$ [NC] RewriteRule page.php http://127.0.0.1/index.php? [NS,S,L]

但是,上面的内容是不对的,但我不知道如何针对任何数字组合进行调整。也许有人能帮忙?

由于要匹配一个或多个字符,因此应该在[0-9]字符范围后加一个加号。还要注意

  • 正则表达式中的点应该用反斜杠引起来。否则,它们将匹配任何字符
  • RewriteCond中的括号是不必要的
  • CCD_ 9中的CCD_ 7和CCD_

我会尝试以下方法:

RewriteCond %{QUERY_STRING} ^id=http://[0-9]+.[0-9]+.[0-9]+.[0-9]+:2082/index.html$ [NC]
RewriteRule page.php http://127.0.0.1/index.php [L]

相关内容

  • 没有找到相关文章

最新更新