当没有任何匹配时,从HAProxy服务404

我目前正在使用1.5dev-17重新configurationHAProxy。 我想要做的是在没有后端用于特定请求时返回404错误。

我们当前的configuration使用default_backend来路由到我们的django应用服务器,但是当有大量的探测请求(比如钢笔testing)与其他configuration的后端都不匹配时,我们的django服务器在尝试中停顿为这些无效请求服务,最终返回404。

我想从HAProxy服务404而不是委托给Django后端。 我目前正在用黑客实现这一点:

frontend www ... default_backend nomatch backend nomatch errorfile 503 /var/www/http/404.http 

在404.http文件中,我在头文件中设置了404状态码。 这工作,但感觉非常错误。 用HAProxy有没有更好的方法来实现这一点? 或者我应该使用一个常规的后端,让这个句柄响应404?

在想要类似的东西之后,我想到了同样的东西。 它感觉错了,但在实践中效果很好,而且比试图将黑名单列入黑名单要干净得多。 只要一定要留下评论,所以没有人会认为这是不正确的。