From d188dab3ee0fa414b3c73debcb437af2250626de Mon Sep 17 00:00:00 2001 From: abearxiong Date: Sat, 20 Dec 2025 22:56:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20WebSocket=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E4=B8=AD=E9=97=B4=E4=BB=B6=E5=92=8C=20ServersTranspor?= =?UTF-8?q?t=20=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ingress/apps-ingressroute.yaml | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/k8s/kevisual.cn/ingress/apps-ingressroute.yaml b/k8s/kevisual.cn/ingress/apps-ingressroute.yaml index e515309..5c60aeb 100644 --- a/k8s/kevisual.cn/ingress/apps-ingressroute.yaml +++ b/k8s/kevisual.cn/ingress/apps-ingressroute.yaml @@ -1,5 +1,34 @@ # Kevisual - kevisual.cn (支持 WebSocket) --- +# WebSocket 支持中间件 - 完整头部配置 +apiVersion: traefik.io/v1alpha1 +kind: Middleware +metadata: + name: websocket-headers + namespace: default +spec: + headers: + customRequestHeaders: + X-Forwarded-Proto: "https" + X-Real-IP: "" + X-Forwarded-For: "" + X-Forwarded-Host: "" +--- +# ServersTransport 配置 - 支持长连接 +apiVersion: traefik.io/v1alpha1 +kind: ServersTransport +metadata: + name: websocket-transport + namespace: default +spec: + serverName: "" + insecureSkipVerify: true + maxIdleConnsPerHost: 100 + forwardingTimeouts: + dialTimeout: 30s + responseHeaderTimeout: 30s + idleConnTimeout: 90s +--- apiVersion: traefik.io/v1alpha1 kind: IngressRoute metadata: @@ -14,6 +43,9 @@ spec: services: - name: kevisual-external port: 3005 + serversTransport: websocket-transport + middlewares: + - name: websocket-headers tls: certResolver: letsencrypt --- @@ -31,6 +63,9 @@ spec: services: - name: kevisual-external port: 3005 + serversTransport: websocket-transport + middlewares: + - name: websocket-headers tls: certResolver: letsencrypt --- \ No newline at end of file