Website inaccessible after 6.9 upgrade
-
Working with a self-hosted WP multisite installation. When attempting to upgrade the WordPress core files from version 6.8.3 to the latest release (version 6.9), the site immediately becomes unreachable displaying an error message in the browser (e.g., “ERR_SSL_PROTOCOL_ERROR” in browsers or a generic “connection reset”).
Looking at the Apache error logs, there is the following error every time a connection attempt is made:AH01996: SSL handshake failed: HTTP spoken on HTTPS port; trying to send HTML error page
The output of “curl -v https://www.mysite.com“:
- Host http://www.mysite.com:443 was resolved.
- IPv6: (none)
- IPv4: xxx.xxx.xxx.xx
- Trying xxx.xxx.xxx.xx:443…
- Connected to http://www.mysite.com (xxx.xxx.xxx.xx) port 443
- ALPN: curl offers h2,http/1.1
- (304) (OUT), TLS handshake, Client hello (1): * CAfile: /etc/ssl/cert.pem * CApath: none
- (304) (IN), TLS handshake, Server hello (2):
- TLSv1.2 (IN), TLS handshake, Certificate (11):
- TLSv1.2 (IN), TLS handshake, Server key exchange (12):
- TLSv1.2 (IN), TLS handshake, Server finished (14):
- TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
- TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
- TLSv1.2 (OUT), TLS handshake, Finished (20):
- TLSv1.2 (IN), TLS change cipher, Change cipher spec (1):
- TLSv1.2 (IN), TLS handshake, Finished (20):
- SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256 / [blank] / UNDEF
- ALPN: server did not agree on a protocol. Uses default.
- Server certificate: * subject: C=US; ST=State; O=Org; CN=CertName * start date: Jul 25 00:00:00 2025 GMT * expire date: Jul 25 23:59:59 2026 GMT * subjectAltName: host “www.mysite.com” matched cert’s “www.mysite.com” * issuer: C=GB; ST=Greater Manchester; L=Salford; O=Sectigo Limited; CN=Sectigo RSA Organization Validation Secure Server CA * SSL certificate verify ok.
- using HTTP/1.x
GET / HTTP/1.1 Host: http://www.mysite.com User-Agent: curl/8.7.1 Accept: */*
- Request completely sent off
- Recv failure: Connection reset by peer
- LibreSSL SSL_read: Connection reset by peer, errno 54
- Closing connection curl: (56) Recv failure: Connection reset by peer
From this curl output, it appears that the DNS and TCP connections are good, the TLS handshake completes successfully (TLSv1.2, strong cipher), the certificate is valid/not expired and is verified ( “SSL certificate verify ok“), and the GET HTTP request was sent.
It looks to me like everything is OK until the HTTP request is sent, and that’s when the connection is killed.
Again, this only happens after upgrading WordPress core to the latest 6.9 version. If I roll back to the previous version of WordPress (6.8.3 – reverting to prevous backups of my WP core files) and restart the Apache server, the site becomes accessible and everything is back to normal (other than being a version behind).
Any ideas why this could be happening?
You must be logged in to reply to this topic.