You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Nginx Plus主动健康检查使用HTTP而非HTTPS?

解决Nginx Plus健康检查使用HTTP而非HTTPS的配置方案

问题核心是当前健康检查默认沿用了proxy_pass的HTTPS协议,但Traefik暴露的9000健康端点仅支持HTTP,导致访问返回404。只需在health_check指令中明确指定使用HTTP协议即可解决。

修改后的完整配置

upstream k8s {
 zone k8s 64k;
 server server1:443;
}

match probe {
 status 200;
 body ~ "OK";
}

# Server config
server {
 listen *.443 ssl;
 # server options placeholder

 location / {
 proxy_pass https://k8s;

 # headers placeholder

 # 关键修改:添加protocol=http指定健康检查用HTTP协议
 health_check port=9000 uri=/ping match=probe protocol=http;
 }
}

关键修改说明

  • 在health_check指令末尾添加protocol=http,强制Nginx Plus使用HTTP协议访问Traefik的9000健康端点,而非继承proxy_pass的HTTPS协议
  • 上游服务器的443端口仍用于业务流量的HTTPS转发,健康检查独立使用9000端口的HTTP服务,两者互不影响

内容的提问来源于stack exchange,提问作者Benjo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 21:57:34