有没有办法在 apache 中产生相同的 Nginx 444 错误。
Nginx
444--> 连接关闭且无响应。
我喜欢这个错误,因为如果有人尝试 CURL,他会得到一个空的响应,但在 Apache 中并非如此。
答案1
444 不会返回给客户端,它只会写入 nginx 日志,表示连接已关闭且无响应。使用 modsecurity 和 DROP 操作可以在 apache 中实现与防火墙相同的行为。
答案2
如果这有帮助的话......
我使用 Apache 作为端口 3000 上的 Web 应用程序的反向代理,并且我只想极其谨慎地丢弃某些虚假请求 - 例如,它不是 WordPress,所以我甚至不想对/wp-admin
探测做出响应!
无论如何,我mod_security
按照建议进行安装,并添加了以下/etc/httpd/modsecurity.d/10-empty-response.conf
条目;现在我的应用程序可以返回“444”状态,并且代理将断开连接:
SecRule RESPONSE_STATUS 444 "id:'444444',phase:3,log,drop"
答案3
Apache 似乎不支持自定义的非标准 HTTP 响应代码(例如 444)。我在 Apache 的文档中找不到允许的代码的详尽列表ErrorDocument 指令,但是使用类似的东西进行测试
<Location /444>
ErrorDocument 444 "Something"
</Location>
甚至不允许 Apache 加载,而更改上述444
内容则404
允许 Apache 加载而不会出现任何错误或问题。