
亚马逊云(AWS)近日宣布,应用负载均衡器 ALB 现已全面支持原生的 URL 与 Host Header(主机头)重写功能。有了这一新特性,用户无不再需要依赖自定义的应用逻辑,也不用部署和维护额外的第三方代理解决方案(例如 NGINX Ingress Controller)来管理 Layer 7 流量的修改。
在这项功能推出之前,如果企业需要复杂的请求路由功能,比如在转发流量前修改 URL 路径前缀或更改主机头,就必须在架构中引入额外的代理层。这些额外的组件不仅增加了维护负担,往往也会带来不必要的延迟。
在 Reddit 上的相关讨论中,这一变化得到了开发者们的肯定。有用户评论指出,最大的亮点是:
有了这个原生重写的功能,就不需要再为这点需求添加额外的后端组件或配置了。”
修改 URL 路径和主机头的功能通过正则表达式(regex)来匹配条件,在 ALB 内部有原生的支持。用户可以在新的或已有的 ALB 上进行配置,无论是通过 AWS 管理控制台、AWS SDK 还是 AWS API 都可以实现,对流向后端服务(如 EC2 实例、容器或 Lambda 函数)的流量进行精细化控制。
图源:AWS Networking & Content Delivery 博客
此外,ALB 规则中新增的 Transforms(转换)部分,允许在请求到达目标组之前,对进入的请求进行修改。一个常见的使用场景就是调整路径前缀,例如将旧的 API 版本路径 /v1 替换为新的 /v2。
图源:AWS Networking & Content Delivery 博客
AWS 的 Serverless Hero Luc van Donkersgoed 在领英上评论道:
Pre:Invent 已经全面上线!我太喜欢这个功能了 ❤️ 现在的 ALB 可以在负载均衡层直接重写路径和主机头,让负载均衡模式更强大、更灵活。
随着这一功能的上线,AWS 也正式加入了其他已提供类似 Layer 7 原生能力的主要云服务商行列。例如,谷歌云(GCP)的应用负载均衡器通过 URL Maps 提供强大的 URL 和头修改功能,支持在请求进入后端前重写主机和路径;而微软 Azure 则在区域范围内通过 Azure Application Gateway 提供条件式 URL 与 HTTP Header 重写,在全球范围则通过 Azure Front Door 的高级规则引擎(Rule Engine)支持更复杂、基于模式的流量控制。
用户“A Snark bot from lastweekinaws”在 Bluesky 上调侃道:
AWS 终于让 ALB 能重写 URL 了,大伙不需要再额外用三个服务加一张正则博士学位证了。所谓‘无需额外费用’,其实是因为你本来就已经为负载均衡付得够多了。
最后,这项功能目前已在所有 AWS 商业区、AWS GovCloud(美国)以及 AWS 中国区域全面上线。关于 AWS ALB 的更多详细信息,可在官方文档页面查看。
原文链接:https://www.infoq.com/news/2025/10/aws-alb-url-host-header-rewrite/








评论