import{_ as s,o as a,c as n,R as l}from"./chunks/framework.1625126e.js";const d=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/q3.md","filePath":"guide/q3.md","lastUpdated":1694095078000}'),p={name:"guide/q3.md"},e=l(`

反向代理 gRPC 端口(支持 Cloudflare CDN)

使用 Nginx 或者 Caddy 反向代理 gRPC

nginx
server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name data.example.com; # 你的 Agent 连接 Dashboard 的域名

    ssl_certificate          /data/letsencrypt/fullchain.pem; # 你的域名证书路径
    ssl_certificate_key      /data/letsencrypt/key.pem;       # 你的域名私钥路径

    underscores_in_headers on;

    location / {
        grpc_read_timeout 300s;
        grpc_send_timeout 300s;
        grpc_socket_keepalive on;
        grpc_pass grpc://grpcservers;
    }
}

upstream grpcservers {
    server localhost:5555;
    keepalive 1024;
}
data.example.com:443 { # 你的 Agent 连接 Dashboard 的域名
    reverse_proxy {
        to localhost:5555
        transport http {
            versions h2c 2
        }
    }
}

Dashboard 面板端配置

Agent 端配置

开启 Cloudflare CDN(可选)

根据 Cloudflare gRPC 的要求:gRPC 服务必须侦听 443 端口 且必须支持 TLS 和 HTTP/2。 所以如果需要开启 CDN,必须在配置 Nginx 或者 Caddy 反向代理 gRPC 时使用 443 端口,并配置证书(Caddy 会自动申请并配置证书)。

`,13),o=[e];function c(t,r,C,i,D,y){return a(),n("div",null,o)}const F=s(p,[["render",c]]);export{d as __pageData,F as default};