如果您有如下非静态请求:
example.tld/some-slug/
然后,您需要运行WordPress来查看该slug是否可用。
Web服务器(nginx/apache)不知道这一点,因为WordPress必须通过404响应头通知我们这一点。
如果您的站点只有很少的页面,那么您可以事先告诉Web服务器。
我不知道是否有任何Web服务器模块可以存储现有WordPress站点地图(在磁盘或内存中),以预先检查可能的404错误。
如果这个段塞不存在,并且您在该段塞上收到数千个请求,那么您可以尝试缓存404响应。
有一些缓存插件可以做到这一点。
但是,如果攻击由随机弹头组成,那么这可能没有多大用处:
example.tld/azwc/
example.tld/eldw/
example.tld/tpwh/
...
然后您可以阻止IP地址,但很可能还有数千个IP地址。
然后,您可以尝试收集和阻止大量错误IP地址的服务。
无论如何,你应该试着把你的404.php
页
防御可能在很大程度上取决于您收到的攻击请求类型。