与目录名和变量都匹配的htaccess重定向[F]

时间:2018-11-13 20:12:53

标签: .htaccess

我想完全阻止以下格式的网址请求:

/cat/pathfinder/pathfinder-accessories/?add-to-cart=27368

/cat/pathfinder/?add-to-cart=27368

我试图通过HTaccess做到这一点:

RewriteRule ^(.*)cat$^(.*)?add-to-cart=$^(.*)$ - [F]

但这不匹配。你能看到为什么吗?

在同一.htaccess文件中,我还有其他更简单的重写器可以正常工作。

上下文:

我有一个在线商店网站,被“添加到购物车”的自动请求所困扰。该商店有成千上万的产品,因此如此多的同时请求对内存和处理器的影响是可怕的。 (如果需要的话,这家商店是Wordpress with Woocommerce)

我更改了内容,以使该机器人不再能同时在所有20个产品上同时点击“添加到购物车”页面,但它们仍在点击它们,因此很显然有一个列表。我一直无法通过IP阻止请求,因为它们是通过Cloudflare来自许多位置的。

1 个答案:

答案 0 :(得分:1)

查询字符串与RewriteRule不匹配。

您可以改用此规则:

RewriteCond %{THE_REQUEST} /cat/[^?]*\?add-to-cart=\d+ [NC]
RewriteRule ^ - [F]