本人在服务器上使用 nginx-quic 版本搭建了一个 web server 。配置中:
http {
...
server {
listen 8443 http3 reuseport;
...
}
...
}
如此配置启动后,netstat 可以看到仅启用了 udp8443 端口。 然后按照: https://blog.csdn.net/kencaber/article/details/111242634 开启了 firefox 与 chrome 的 http3 选项,发现无法访问。但是使用支持 http3 的 curl 工具访问是没问题的。
然后在 nginx 的 listen 指令后又加了一条 listen 8443 ssl;指令,netstat 会发现 nginx 同时监听了 tcp 和 udp 的 8443 端口。此时使用浏览器就可以访问了。
向诸位 v 友求教,http3 不是底层依赖 QUIC 协议,应该是走 udp 的吗,为何仅启用 udp 时浏览器无法正常访问?是否是本人配置的问题?
PS:chrome 当前版本为 90.0.4430.93 ,firefox 为 88.0.1 。且浏览器访问 https://quic.nginx.org/ 提示 Congratulations! You're connected over QUIC.
1
Yadomin 2021-05-11 20:40:49 +08:00 via Android
因为浏览器不会默认用 quic 去连,只有返回 Alt-Svc 的时候才会
|
3
monkeyNik OP @Yadomin 额 我在配置中加了 add_header Alt-Svc '$http3=":8443"; ma=86400'; 但看 netstat 显示的还是走的 tcp...
|
4
mons 2021-05-12 06:59:45 +08:00
add_header Alt-Svc 'h3-29=":443"';
|