AWS中如何配置CURL请求将流量导向高优先级栈?
解决ALB流量导向高优先级栈的CURL命令问题
看起来你的思路方向是对的,不过可能有几个细节没调整到位,我帮你梳理下需要检查和修正的地方:
确保URL路径严格匹配监听器规则
你的监听器规则里栈2对应的路径模式是/test/test1,所以CURL命令中的URL必须使用这个完整路径,不能只保留占位符<context path>。修正后的命令应该是:curl --request GET -v --header "Content-type: application/json" --header "Host: api.sample.com" "https://alb/test/test1" --insecure检查Host头的准确性
确认Host头的内容完全和规则里的api.sample.com一致,不要有多余的空格、大小写错误(虽然HTTP Host头不区分大小写,但为了稳妥尽量完全匹配),比如不要写成Host: Api.Sample.Com或者末尾带空格的格式,这会导致规则匹配失败。验证监听器规则的优先级
ALB的监听器规则是按照优先级数值从小到大的顺序匹配的(数值越小优先级越高)。你需要确认这条“路径为/test/test1且Host头为api.sample.com”的规则,优先级数值要比栈1的规则更小,否则请求会先匹配到栈1的规则,无法导向栈2。借助ALB访问日志排查问题
如果调整后还是不行,建议开启ALB的访问日志功能。日志里会详细记录每个请求的Host头、请求路径、匹配的规则ID等信息,能帮你快速定位是规则没匹配,还是其他配置问题导致流量没走到栈2。
内容的提问来源于stack exchange,提问作者user1190615
相关产品推荐
相关产品推荐

