我看到我的 apache 上出现了一些流量,其中包含所有无效的 URL,但具有特定的模式。以下是一些网址
www.example.com/?1gx2A1WV=Ji7iMHhDsDOHvesb8
www.example.com/?LTn28PGXpg=VQTNObTmrhyF7Pjs2VoX
所以基本上我想在 apache 中阻止这种模式。 任何在 www.example.com/后面有"?"的东西都应该被阻止。
有人可以帮我在 apache 中创建重写规则吗? 提前谢谢。
REQUEST_URI不包含查询字符串。 尝试将规则与QUERY_STRING匹配
这应该会有所帮助。重写Cond 匹配您提到的请求 uri 模式。重写规则将 403 作为 HTTP 响应发回。您对位置的使用可能因您的 apache 配置而异。
<Location />
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/?.*$
RewriteRule ^.*$ - [F,L]
</Location>