简单地说 HTTP/2 是 HTTP/1.1 的升级版(目前大多数网页还是 HTTP/1.1),点击这里可以直观地体会到 HTTP/2 相比于 HTTP/1.1 的提升(不代表 V2Ray 中 HTTP/2 相对于 TCP 的提升就是这样的)。
在 V2Ray 的手册中并没有 HTTP/2 的相关内容,而且 V2Ray 的 HTTP/2 还处于测试阶段。
最近几版的 V2Ray 已经开始支持 HTTP/2,可能 v3.12 就支持了,实测 v3.14 能够使用 HTTP/2 了。与其它的传输层协议一样在 streamSettings 中配置。
{
"inbound": {
"port": 443,
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "b831381d-6324-4d53-ad4f-8cda48b30811",
"alterId": 64
}
]
},
"streamSettings": {
"network": "h2", // h2 也可写成 http,效果一样
"httpSettings": { //此项是关于 HTTP/2 的设置
"path": "/ray"
},
"security": "tls", // 配置tls
"tlsSettings": {
"certificates": [
{
"certificateFile": "/etc/v2ray/v2ray.crt", // 证书文件,详见 tls 小节
"keyFile": "/etc/v2ray/v2ray.key" // 密钥文件
}
]
}
}
},
"outbound": {
"protocol": "freedom",
"settings": {}
}
}
{
"inbound": {
"port": 1080,
"listen": "127.0.0.1",
"protocol": "socks",
"domainOverride": ["tls","http"],
"settings": {
"auth": "noauth",
"udp": false
}
},
"outbound": {
"protocol": "vmess",
"settings": {
"vnext": [
{
"address": "mydomain.me",
"port": 443,
"users": [
{
"id": "b831381d-6324-4d53-ad4f-8cda48b30811",
"alterId": 64
}
]
}
]
},
"streamSettings": {
"network": "h2",
"httpSettings": { //此项是关于 HTTP/2 的设置
"path": "/ray"
},
"security": "tls"
}
}
}
- 2018-03-18 初版