QUIC connection could not be established
findmyname
nginx-forum at forum.nginx.org
Sat Nov 20 16:42:49 UTC 2021
Hello all,
I'm trying to run nginx with quic support on Ubuntu 20.04.
I followed official README https://quic.nginx.org/readme.html.
However when I run http3 check https://www.http3check.net/ it returns error:
QUIC connection could not be established.
I build boringssl and nginx:
```
#!/bin/sh
set -eux
compile_boringssl() {
git clone --depth=1 https://github.com/google/boringssl.git
cd boringssl && \
mkdir build && \
cd build && \
cmake -GNinja .. && \
ninja
}
compile_nginx() {
# --with-http_v3_module enable QUIC and HTTP/3
# --with-http_quic_module enable QUIC for older HTTP versions
# --with-stream_quic_module enable QUIC in Stream
hg clone -b quic https://hg.nginx.org/nginx-quic && \
cd nginx-quic && \
./auto/configure \
--with-debug \
--with-http_v3_module \
--prefix=/etc/nginx \
--sbin-path=/usr/sbin/nginx \
--modules-path=/usr/lib/nginx/modules \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/run/nginx.pid \
--lock-path=/run/nginx.lock \
--http-client-body-temp-path=/var/cache/nginx/client_temp \
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
\
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp \
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
\
--http-scgi-temp-path=/var/cache/nginx/scgi_temp \
--user=nginx \
--group=nginx \
--with-cc-opt="-I../boringssl/include" \
--with-ld-opt="-L../boringssl/build/ssl
-L../boringssl/build/crypto"
make -j$(nproc)
}
compile_boringssl && compile_nginx
```
Build version:
```
# nginx -V
nginx version: nginx/1.21.4
built by gcc 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)
built with OpenSSL 1.1.1 (compatible; BoringSSL) (running with BoringSSL)
TLS SNI support enabled
configure arguments: --with-debug --with-http_v3_module --prefix=/etc/nginx
--sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules
--conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log --pid-path=/run/nginx.pid
--lock-path=/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx
--with-cc-opt=-I../boringssl/include --with-ld-opt='-L../boringssl/build/ssl
-L../boringssl/build/crypto'
```
HTTP site:
```
server {
listen 80;
listen [::]:80;
server_name {{ domain }} www.{{ domain }};
# Logging.
access_log /var/log/nginx/{{ domain }}-access.log json-log;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2; # TCP listener for HTTP/2
listen 443 http3 reuseport; # UDP listener for QUIC+HTTP/3
# RSA certificate
ssl_certificate /etc/letsencrypt/live/{{ domain }}/fullchain.pem; #
managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/{{ domain }}/privkey.pem;
# managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by
Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
# Logging.
access_log /var/log/nginx/{{ domain }}-access.log json-log;
root /var/www/{{ domain }};
# Add index.php to the list if you are using PHP
index index.html;
server_name {{ domain }};
add_header Alt-Svc 'h3=":443"'; # Advertise that HTTP/3 is
available.
add_header QUIC-Status $quic; # Sent when QUIC was used.
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
}
```
I replaced binary from package manager with the build one:
```
systemctl stop nginx && cp nginx-quic/objs/nginx /usr/sbin/nginx &&
systemctl start nginx; journalctl -fu nginx
```
There isn't any error however the http3 check is failing.
I also try to connect from firefox w enable http3 support but it connects
with http/1.1.
Is there something wrong with my set-up ?
Posted at Nginx Forum: https://forum.nginx.org/read.php?2,292896,292896#msg-292896
More information about the nginx
mailing list