設定 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"
...