跳到内容

配置 HTTP

HTTPS 重定向

操作员可以强制所有服务进行 HTTPS 重定向。有关更多详细信息,请参阅配置外部域加密页面中提到的 http-protocol

覆盖默认 HTTP 行为

您可以覆盖每个服务或全局配置的默认行为。

  • 全局键: http-protocol
  • 按修订注解键: networking.knative.dev/http-protocol
  • 可能的值
    • enabled — 服务接受 HTTP 流量。
    • redirected — 服务为所有 HTTP 连接发送 301 重定向,并要求客户端改用 HTTPS。
  • 默认: enabled

示例

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: example
  namespace: default
  annotations:
    networking.knative.dev/http-protocol: "redirected"
spec:
  ...
apiVersion: v1
kind: ConfigMap
metadata:
  name: config-network
  namespace: knative-serving
data:
  http-protocol: "redirected"
apiVersion: operator.knative.dev/v1alpha1
kind: KnativeServing
metadata:
  name: knative-serving
spec:
  config:
    network:
      http-protocol: "redirected"

每个工作负载的 HTTP/1 全双工支持

Knative 服务可以开启数据路径上端到端的 HTTP/1 全双工支持。这应该用于遇到相关 Golang 问题的场景,例如应用程序服务器在 QP 的反向代理消耗完整个请求之前就写回。有关问题出现原因的更多详细信息,请参阅此处

配置 HTTP/1 全双工支持

为了启用 HTTP/1 全双工支持,您可以在修订规范级别设置相应的注解,如下所示

警告

在启用之前,请使用您的 http 客户端进行测试,因为较旧的客户端可能不支持 HTTP/1 全双工。

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: example-service
  namespace: default
spec:
  template:
    metadata:
      annotations:
        features.knative.dev/http-full-duplex: "Enabled"
...

我们使用分析和 cookie 来了解网站流量。有关您使用我们网站的信息会与 Google 共享以达到此目的。了解更多。