ERR_SSL_PROTOCOL_ERROR on Nginx
Why it happens on Nginx
Nginx serves the wrong certificate chain when ssl_certificate points at the leaf file instead of the fullchain bundle, so the handshake dies before any HTTP response is written.
The fix on Nginx
Point ssl_certificate at fullchain.pem (not cert.pem), keep ssl_certificate_key on privkey.pem, then run nginx -t && systemctl reload nginx. Set ssl_protocols TLSv1.2 TLSv1.3; anything older is refused by modern Chrome.
Is ERR_SSL_PROTOCOL_ERROR happening on your domain?
The SSL checker reads the live handshake: protocol versions offered, cipher suites, chain completeness and expiry. If it cannot complete the handshake either, the fault is server-side and not your browser.
Free, no signup. Runs from outside your network, which is the only way to tell a server fault from a local one.
If that didn't fix it
Nginx has its own failure mode, but ERR_SSL_PROTOCOL_ERROR has a wider set of causes that apply everywhere. The most common one overall is: the server only offers tls 1.0 or tls 1.1, which every current browser has disabled.
All causes and fixes for ERR_SSL_PROTOCOL_ERROR