# ERR_SSL_PROTOCOL_ERROR (This site can't provide a secure connection)

**Code:** `ERR_SSL_PROTOCOL_ERROR` · **Category:** JavaScript · **Seen on:** JavaScript

The browser couldn’t negotiate TLS — the server sent an invalid response, often plain HTTP on the HTTPS port.

## Meaning

Common when a server listens on 443 without TLS configured, when TLS versions/ciphers don’t overlap, or when a proxy interferes.

## Common causes

- HTTPS URL pointing at a plain-HTTP port
- TLS not configured on the server
- Outdated TLS versions only
- Antivirus/proxy interference

## Quick fix

1. Check that the server has a certificate and TLS on 443
2. Use http:// for local dev servers that don’t do TLS
3. Enable TLS 1.2/1.3

## Detailed fix by platform

### Linux

1. `openssl s_client -connect example.com:443 -servername example.com`

## How to diagnose

1. **Server** — TLS configured on that port?
2. **URL** — Using https on a dev server?

---
Source: [WhatIsMyError](https://whatismyerror.com/errors/javascript/err-ssl-protocol-error)
