2021-03-27 14:28:52 +00:00
|
|
|
|
# VLESS-GRPC
|
2021-06-12 15:30:05 +00:00
|
|
|
|
## 原理图 (Caddy) :
|
2021-03-27 14:28:52 +00:00
|
|
|
|
Xray client <--- gRPC(TLS) ---> Caddy2 <--- gRPC(cleartext) ---> Xray server
|
2021-06-12 15:30:05 +00:00
|
|
|
|
## Nginx:
|
2021-06-05 09:32:30 +00:00
|
|
|
|
同时,您也可以选择使用 Nginx。示例配置片段如下(部分来自 [@xqzr](https://github.com/xqzr)):
|
2021-03-27 14:28:52 +00:00
|
|
|
|
```conf
|
2021-05-30 15:07:26 +00:00
|
|
|
|
server {
|
2021-09-27 12:38:11 +00:00
|
|
|
|
listen 443 ssl http2 so_keepalive=on;
|
2021-06-12 15:30:05 +00:00
|
|
|
|
server_name example.com;
|
2021-05-30 15:07:26 +00:00
|
|
|
|
|
2021-06-12 15:30:05 +00:00
|
|
|
|
index index.html;
|
|
|
|
|
root /var/www/html;
|
2021-05-30 15:07:26 +00:00
|
|
|
|
|
2021-06-12 15:30:05 +00:00
|
|
|
|
ssl_certificate /path/to/example.cer;
|
|
|
|
|
ssl_certificate_key /path/to/example.key;
|
|
|
|
|
ssl_protocols TLSv1.2 TLSv1.3;
|
2021-06-05 09:32:30 +00:00
|
|
|
|
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
|
2021-07-25 12:01:37 +00:00
|
|
|
|
|
|
|
|
|
client_header_timeout 1071906480m;
|
|
|
|
|
keepalive_timeout 1071906480m;
|
2021-07-05 13:50:09 +00:00
|
|
|
|
# 在 location 后填写 /你的 ServiceName
|
|
|
|
|
location /你的 ServiceName {
|
2021-06-12 15:30:05 +00:00
|
|
|
|
if ($content_type !~ "application/grpc") {
|
|
|
|
|
return 404;
|
|
|
|
|
}
|
|
|
|
|
client_max_body_size 0;
|
2021-07-03 10:57:59 +00:00
|
|
|
|
client_body_timeout 1071906480m;
|
|
|
|
|
grpc_read_timeout 1071906480m;
|
2021-06-12 15:30:05 +00:00
|
|
|
|
grpc_pass grpc://127.0.0.1:2002;
|
|
|
|
|
}
|
2021-03-27 14:28:52 +00:00
|
|
|
|
}
|
2021-03-28 08:55:46 +00:00
|
|
|
|
```
|