【发布时间】:2019-11-01 03:44:01
【问题描述】:
我正在关注this 教程,在gcp 的cloud run 上执行所谓的快速入门并进行一些实验。
除了公布的和典型的服务可用性方面的一些延迟和不一致之外,脚本步骤进展顺利。
我想问(找不到任何文档或解释)是为什么,为了让我访问服务,我需要传递给curl 一个特定的@987654326 @header 如相关教程所示:
curl -v -H "Host: hello.default.example.com" YOUR-IP
其中YOUR-IP 是由 istio 管理的入口网关创建的负载均衡器的公共 IP
【问题讨论】:
-
以下两个答案都是正确的。一项额外的项目。不包含 Host 标头违反了 HTTP/1.1 和 HTTP/2 规范:developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Host 我没有看到 Cloud Run 实际上返回 400(错误请求)错误,但如果缺少 Host 标头,它应该会返回。规范说:“必须在所有 HTTP/1.1 请求消息中发送 Host 标头字段。400(错误请求)状态代码将发送到任何缺少 Host 标头字段或包含多个标头字段的 HTTP/1.1 请求消息。 "
标签: kubernetes google-cloud-platform istio google-cloud-run knative