Ang ipinapahayag na suporta ay hindi katiyakang gumagana
Ipinapahayag ng server ang HTTP/3 sa Alt-Svc response header, na natatanggap ng client sa HTTP/1.1 o HTTP/2. Pangako lamang ang header. Gumagana ang HTTP/3 sa QUIC sa ibabaw ng UDP, kaya maaaring normal na mag-load ang pahina kahit lubusang nakaharang ang UDP, at tahimik na manatili ang browser sa HTTP/2.
curl -sI https://server.example/ | grep -i alt-svcKumpirmahin ang totoong transfer
Tanging isang nakumpletong request sa QUIC ang nagpapatunay sa HTTP/3. Gumamit ng curl na binuo na may suporta sa HTTP/3; marami sa mga system package ang wala nito, kaya tinatanggihan ang option, na walang sinasabi tungkol sa server. Sa browser, buksan ang developer tools at tingnan ang Protocol column, na nagpapakita ng h3 para sa ganitong request. Maaaring gumamit ang browser ng HTTP/2 sa unang pagbisita, kaya i-load muli ang pahina.
curl -V | grep -i http3
curl -sS --http3-only -o /dev/null -w '%{http_version}\n' https://server.example/Suriin ang NGINX configuration
Kailangan ng NGINX ng QUIC listener kasama ng TCP listener, at dapat itong suportahan ng bersiyon at build nito. Kailangan ang TLS 1.3 dahil direkta itong ginagamit ng QUIC. Suriin ang configuration bago mag-reload. Ang ma value sa Alt-Svc ay ang tagal sa segundo na tatandaan ng mga client ang pangako, kaya gumamit ng maikling tagal habang sumusubok.
listen 443 ssl;
listen 443 quic reuseport;
http2 on;
add_header Alt-Svc 'h3=":443"; ma=300' always;
nginx -V 2>&1 | grep -o with-http_v3_module
sudo nginx -tBuksan ang UDP 443 sa buong daanan
Ang pinakakaraniwang dahilan ng pagkabigo ay firewall na nagpapahintulot sa TCP 443 ngunit hindi sa UDP 443. Suriin ang server at anumang panlabas na filter. Maaaring kumpirmahin sa server kung nakikinig ang socket. Sadyang hinaharangan ng ilang corporate at pampublikong network ang QUIC, kaya hindi patunay na may problema ang server kapag pumalya ang pagsubok mula sa isang network: ulitin ito mula sa iba.
sudo ss -lunp | grep ':443'
sudo ufw allow 443/udp
sudo tcpdump -ni any udp port 443Mas mabilis ba ang bagong protocol?
Pinakamalaking tulong ang HTTP/3 sa mga koneksiyong may packet loss o nagpapalit ng network, dahil hindi pinaghihintay ng nawawalang packet ang ibang stream. Sa maayos na wired connection, maaaring maliit ang pagkakaiba at maaaring mas mataas ang paggamit ng CPU sa server. Sukatin ang sarili mong sitwasyon sa halip na ipagpalagay na may pagbuti, at panatilihing magagamit ang HTTP/2 para sa mga client na hindi makagamit ng UDP.
Ang HTTP/3 test sa CH-J Server Manager
May kasamang HTTP client ang Server Diagnostics, kaya hindi nakadepende ang test sa system curl. Iniuulat lang nitong kumpirmado ang HTTP/3 pagkatapos ng nakumpletong QUIC transfer at itinuturing nitong pahayag lamang ng suporta ang Alt-Svc. Kapag nag-timeout ang UDP, sinasabi nitong hindi pa beripikado ang suporta ng server dahil maaaring ang network sa pagitan mo at ng server ang sanhi, at hindi nito itinuturing na tagumpay ang paglipat sa ibang protocol.