是否可以在 traefik 中覆盖 "server name" 响应 header?

Is it possible to overwrite "server name" response header in traefik?

我正在使用 Traefik(版本 1.7.10)设置一个新服务器,用于负载平衡不同的 NGINX 和 PHP-FPM 容器。

目前访问者在响应中看到 header 我的容器使用 NGINX。对于所有容器,我在哪里可以将服务器响应 header 覆盖为其他内容(如 "FunnyServer")?

我过去用 HAProxy 做过这个,想知道如何用 Traefik 做这个?

在这里您可以看到来自 HAProxy 的响应:

cache-control: no-store, no-cache, must-revalidate, post-check=0, 
pre-check=0
content-type: text/html; charset=utf-8
date: Wed, 17 Apr 2019 20:20:15 GMT
expires: Thu, 19 Nov 1981 08:52:00 GMT
pragma: no-cache
server: MonkeysBananaServer    <===== WITH HAPROXY!!! Traefik??? 
set-cookie: PHPSESSID=1234567890abcdef; path=/; domain=.xxx.xx
status: 200
x-powered-by: PHP/x.x.x

如您所见,在 HAProxy 下,我已将响应 header 设置为 "MonkeysBananaServer"。

您可以覆盖响应 headers:

traefik.frontend.headers.customResponseHeaders=server:FunnyServer

https://docs.traefik.io/configuration/backends/docker/#custom-headers

使用2.0版本有同样问题的朋友:

- "traefik.http.middlewares.secure-headers.headers.customresponseheaders.x-powered-by=SomeThing/9.7.2"
- "traefik.http.routers.custom_router_name.middlewares=secure-headers"