配置 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"
...