SSL certificate errors visitors को आपकी site तक securely पहुंचने से रोकती हैं। यह guide हर common error code, इसका meaning, और इसे कैसे fix करें — चाहे आप visitor हों या website owner — को cover करती है।
सबसे common error के लिए specifically, हमारी dedicated guide देखें: “Your connection is not private” fix करें →
Error Reference Table
| Error Code (Chrome) | Firefox Equivalent | Meaning | Fix |
|---|---|---|---|
NET::ERR_CERT_DATE_INVALID | SEC_ERROR_EXPIRED_CERTIFICATE | Certificate expired | Certificate renew करें |
NET::ERR_CERT_COMMON_NAME_INVALID | SSL_ERROR_BAD_CERT_DOMAIN | Domain certificate से match नहीं करता | Correct domain के लिए certificate get करें |
NET::ERR_CERT_AUTHORITY_INVALID | SEC_ERROR_UNKNOWN_ISSUER | Self-signed या untrusted CA | Let’s Encrypt use करें |
NET::ERR_CERT_REVOKED | SEC_ERROR_REVOKED_CERTIFICATE | Certificate revoke कर दिया गया | नया certificate get करें |
NET::ERR_SSL_PROTOCOL_ERROR | SSL_ERROR_RX_RECORD_TOO_LONG | TLS handshake fail | Server config check करें |
NET::ERR_SSL_VERSION_OR_CIPHER_MISMATCH | SSL_ERROR_NO_CYPHER_OVERLAP | कोई common TLS version/cipher नहीं | TLS 1.2+ enable करें |
ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN | — | HPKP pin match नहीं करता | HPKP pins update या remove करें |
ERR_CERTIFICATE_TRANSPARENCY_REQUIRED | — | CT log entry missing | CT-compliant CA से re-issue करें |
Detailed Error Solutions
ERR_CERT_DATE_INVALID — Certificate Expired
Reason: Certificate की Not After date बीत चुकी है। 90-day Let’s Encrypt certificates के साथ, यह तब होता है जब आप renewal भूल जाते हैं।
Visitor fix: अपने device की date और time check करें — अगर आपकी clock wrong है, तो valid certificates expired दिखाई देते हैं।
Owner fix:
# Check the actual expiry
echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -enddate
Immediately renew करें, files replace करें, server reload करें। Future में इसे prevent करने के लिए monitoring set करें।
ERR_CERT_COMMON_NAME_INVALID — Domain Mismatch
Reason: Certificate example.com के लिए issued किया गया था लेकिन आप www.example.com (या vice versa) पर जा रहे हैं, या certificate completely different domain cover करता है।
Owner fix:
# Check which domains the certificate covers
echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -ext subjectAltName
एक नया certificate get करें जिसमें सभी required domains included हों। GetHTTPS में, example.com और www.example.com दोनों add करें।
ERR_CERT_AUTHORITY_INVALID — Untrusted CA
Reason: Certificate self-signed है, किसी unknown CA द्वारा issued है, या intermediate chain of trust incomplete है।
Owner fix:
- अगर self-signed → Let’s Encrypt certificate से replace करें
- अगर chain incomplete →
fullchain.pem(Nginx) use करें याSSLCertificateChainFile(Apache) add करें - अगर unknown CA → किसी trusted CA पर switch करें
ERR_SSL_PROTOCOL_ERROR — Handshake Failure
Reason: Server का TLS configuration broken है — wrong certificate path, corrupt files, या incorrect settings।
Owner fix:
# Test the TLS connection
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com
# Check if the certificate and key match
openssl x509 -noout -modulus -in cert.pem | openssl md5
openssl rsa -noout -modulus -in privkey.pem | openssl md5
# Hashes must match
Common reasons: server config में wrong file path, different sessions से certificate और key, file permissions too restrictive।
ERR_SSL_VERSION_OR_CIPHER_MISMATCH — No Compatible TLS
Reason: Server सिर्फ old TLS versions (1.0/1.1) support करता है जिन्हें browsers ने drop कर दिया है, या ऐसे cipher suites use करता है जिन्हें browsers support नहीं करते।
Owner fix:
# Nginx — enable modern TLS
ssl_protocols TLSv1.2 TLSv1.3;
# Apache
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
Mixed Content Warnings
Reason: आपका HTTPS page HTTP पर images, scripts, या CSS load करता है।
यह certificate error नहीं है — certificate ठीक है, लेकिन page insecure resources reference करता है। Full mixed content fix guide →
Diagnostic Workflow
जब आपको कोई SSL error दिखे, तो इस order को follow करें:
1. Error code check करें → category identify करता है
↓
2. Certificate details check करें
openssl s_client -connect domain:443 -servername domain
↓
3. Expired है? → Renew करें
Domain mismatch? → Correct domain के लिए re-issue करें
Chain incomplete? → fullchain.pem use करें
Self-signed? → Let's Encrypt पर switch करें
Config error? → File paths और permissions check करें
↓
4. Fix करने के बाद → Server reload करें, browser cache clear करें, verify करें
Online Diagnostic Tools
| Tool | URL | क्या Check करता है |
|---|---|---|
| SSL Labs | ssllabs.com/ssltest | Full SSL audit (Grade A-F) |
| SSL Checker | sslshopper.com/ssl-checker | Chain, expiry, domain match |
| Certificate Search | crt.sh | Certificate Transparency logs |
| Why No Padlock | whynopadlock.com | Mixed content detection |
FAQ
मैंने error fix की लेकिन browser अभी भी दिखा रहा है
अपना browser cache clear करें (Ctrl+Shift+Delete) या incognito window में test करें। Browsers SSL state cache करते हैं, और HSTS cached decision force कर सकता है। Windows पर, SSL state भी clear करें: Internet Properties → Content → Clear SSL State।
Error कुछ browsers पर दिखती है लेकिन others पर नहीं
Different browsers में different trust stores और caching होती है। सबसे common: एक incomplete certificate chain जिसे कुछ browsers cache से fill कर सकते हैं जबकि others नहीं। अपने server पर full chain serve करके fix करें।
SSL errors कैसे prevent करें?
- Certificate expiry monitor करें — 90 में से 60th day पर alert set करें
cert.pemके बजायfullchain.pemuse करें — chain errors prevent करता है- अपने certificate में सभी domain variants (www + non-www) include करें
- Production servers के लिए Certbot के साथ auto-renewal set करें
- हर change के बाद SSL Labs से test करें