Hi, With Chrome dropping the User-Agent in favor of Client Hints, I think this problem is becoming more and more common: Keep identifying client details and features on the first connection.
I won't go into details about Client Hints, but just mention that for some weird (for me) reason, it was decided that the first connection would always only provide limited client information, and it was up to the web server to ask for more to be provided in the following connections to the same hostname. Apart from wasting connections and round trips by redirecting the client to (almost) the same URL after having requested the additional information, there exists a more efficient workaround, which is to request the additional client information during the TLS handshake, so that it can actually be provided during the first http request: https://chromestatus.com/feature/5555544540577792 This doesn't seem to be currently supported in nginx, even when the underlying TLS library does support ALPS extensions. There was one attempt made at it two years ago, which can be seen in this commit titled "Rough sketch of ACCEPT_CH HTTP/2 support through ALPS": https://github.com/amtunlimited/nginx/commit/e810900a3e4844a9476cad1a9564e0ea7acc4455 I think this something that would make sense to try and include directly into nginx now that Client Hints are being forced on everyone by Chrome and Edge. Are there any newer known efforts to support it? Cheers, Matthias -- nginx mailing list [email protected] https://freenginx.org/mailman/listinfo/nginx
