我们说我有一个域fooapi.com
和两个版本的API:v1和v2。如何在marathon.json
文件中配置HAProxy,以便两个API版本可以位于同一个域之后但具有不同的路径?例如。 fooapi.com/v1/
和fooapi.com/v2/
。
以下配置无效(最新DCOS):
"labels": {
"HAPROXY_0_VHOST": "fooapi.com",
"HAPROXY_DEPLOYMENT_GROUP": "api-grp",
"HAPROXY_GROUP": "external",
"HAPROXY_0_PATH": "/v1"
}
答案 0 :(得分:2)
阅读完Marathon-lb文档后,我通过添加HAPROXY_0_HTTP_BACKEND_PROXYPASS_PATH
配置参数解决了这个问题:
"labels": {
"HAPROXY_0_VHOST": "fooapi.com",
"HAPROXY_DEPLOYMENT_GROUP": "api-grp",
"HAPROXY_GROUP": "external",
"HAPROXY_0_HTTP_BACKEND_PROXYPASS_PATH": "/v1",
"HAPROXY_0_PATH": "/v1"
}