Server

ERR_SSL_PROTOCOL_ERROR — Penyebab dan Cara Mengatasinya

Diperbarui 2026-08-30Baca ~9 menit

ERR_SSL_PROTOCOL_ERROR muncul ketika browser dan server tidak berhasil menyepakati koneksi terenkripsi. Ini terjadi pada tahap handshake, sebelum konten apa pun dikirim — jadi halamannya bukan dimuat sebagian atau lambat, melainkan tidak pernah dimulai sama sekali.

Yang paling penting adalah mengetahui sisi mana penyebabnya, karena keduanya membutuhkan penanganan yang sepenuhnya berbeda. Kalau hanya Anda yang mengalaminya, hampir selalu jam sistem, antivirus yang mencegat TLS, atau cache browser Anda sendiri. Kalau semua orang mengalaminya, penyebabnya sertifikat, konfigurasi, atau versi protokol di server.

Pertama: masalahnya di Anda atau di server

Tiga pengujian ini memakan waktu kurang dari dua menit dan mencoret separuh daftar penyebab.

  • Buka situs lewat data seluler di ponsel dengan Wi-Fi dimatikan. Kalau bisa, penyebabnya jaringan atau komputer Anda, bukan server.
  • Coba browser lain. Hanya Chrome yang error sementara Firefox normal biasanya berarti cache TLS Chrome atau sebuah ekstensi.
  • Gunakan alat pemeriksa SSL online yang berjalan dari server eksternal. Kalau alat itu juga melaporkan error, masalahnya di server dan Anda bisa melewati seluruh pengecekan sisi klien.
💡 Kalau hanya Anda yang error, periksa tanggal dan jam sistem lebih dulu. Jam yang meleset beberapa hari membuat setiap sertifikat dianggap "belum berlaku" atau "sudah kedaluwarsa", dan ini penyebab yang paling sering terlewat.

Melihat kejadian sebenarnya dengan openssl

Browser menyembunyikan hampir semua detail. Satu perintah menunjukkan persis apa yang dikirim server dan di mana handshake-nya gagal.

Jalankan: openssl s_client -connect situsanda.com:443 -servername situsanda.com. Tiga baris pertama hasilnya sudah memberi tahu hampir semua yang perlu Anda ketahui.

Hasil yang Anda lihatArtinya
Verify return code: 0 (ok)Sertifikat valid — masalahnya di sisi klien
unable to get local issuer certificateSertifikat perantara hilang dari rantai
certificate has expiredSertifikat kedaluwarsa — cukup perpanjang
Hostname mismatchSertifikat diterbitkan untuk domain lain
no protocols available / handshake failureBrowser dan server tak punya versi TLS yang sama
💡 Sertifikat perantara yang hilang adalah kasus paling membingungkan, karena browser desktop sering bisa menambalnya sendiri dari sertifikat yang tersimpan, sementara ponsel dan aplikasi tidak. Hasilnya persis "di komputer saya jalan kok".

Penyebab di sisi server, dari yang paling sering

  • Sertifikat sudah kedaluwarsa. Biasanya terjadi karena tugas perpanjangan otomatis Let's Encrypt gagal diam-diam berbulan-bulan sebelumnya tanpa ada yang menyadari.
  • Sertifikat perantara tidak dipasang. Sertifikat Anda benar tapi bagian rantainya terlewat, dan hanya sebagian perangkat yang melaporkan error.
  • Sertifikat tidak cocok dengan domain. Diterbitkan untuk "situsanda.com" tapi pengunjung membuka "www.situsanda.com", atau sebaliknya.
  • Server hanya mendukung TLS 1.2 ke atas sementara ada klien lama, atau sebaliknya: server terlalu tua dan hanya bisa TLS 1.0 yang sudah ditolak browser modern.
  • Konfigurasi SNI salah di server dengan banyak domain. Server mengembalikan sertifikat default alih-alih sertifikat domain yang diminta.
  • Cloudflare diset ke mode Full sementara server asal tidak punya sertifikat valid, atau mode SSL-nya tidak sesuai kenyataan di server.
  • Nginx mendengarkan port 443 tapi kehilangan direktif "ssl" atau menunjuk path file sertifikat yang salah. Error ini selalu muncul tepat setelah penyuntingan konfigurasi.

Penyebab di sisi klien, dari yang paling sering

  • Tanggal dan jam sistem salah. Sertifikat punya rentang berlaku; jam yang meleset membuat sertifikat yang sepenuhnya valid dianggap tidak sah.
  • Antivirus atau penyaring web yang mencegat HTTPS. Banyak produk menyisipkan sertifikatnya sendiri di tengah dan merusak handshake bila konfigurasinya tidak sempurna.
  • Cache TLS browser menyimpan status yang rusak. Di Chrome, menghapus data penjelajahan biasanya menyelesaikannya.
  • Jaringan kantor atau sekolah yang memfilter TLS. Perangkat inspeksi trafik organisasi adalah penyebab yang sangat umum ketika error hanya terjadi di satu lokasi.
  • Browser atau sistem operasi terlalu tua. Perangkat yang tidak diperbarui bertahun-tahun tidak mendukung cipher yang diminta server modern.
  • Ekstensi VPN atau proxy. Coba matikan semua ekstensi, atau gunakan jendela penyamaran dengan ekstensi dinonaktifkan.

Memperbaikinya agar tidak terulang

Sebagian besar insiden SSL di server adalah masalah proses, bukan masalah konfigurasi, dan di situlah tenaga sebaiknya diinvestasikan.

Pastikan perpanjangan otomatis benar-benar berjalan, jangan hanya percaya bahwa ia berjalan. Dengan certbot, "certbot renew --dry-run" memberi tahu apakah perpanjangan sungguhan akan berhasil atau gagal. Banyak situs tumbang karena sertifikat semata-mata karena tugas ini sudah lama rusak tanpa pernah diperiksa.

Pasang peringatan kedaluwarsa di tempat yang benar-benar Anda lihat. Tiga puluh hari sebelum jatuh tempo adalah jarak yang wajar untuk menanganinya tanpa terburu-buru.

Selalu pasang rantai sertifikat lengkap. Penyedia memberikan sertifikat Anda beserta bagian perantaranya; memasangnya setengah menghasilkan error yang hanya muncul di sebagian perangkat dan sangat sulit didiagnosis.

Setelah setiap perubahan konfigurasi SSL, uji dengan openssl dari mesin lain, bukan sekadar membuka browser di komputer Anda. Browser Anda menyimpan terlalu banyak hal untuk memberi hasil yang jujur.

Ingin mengelola sendiri sertifikat dan konfigurasi TLS Anda?

Cloud VPS dengan akses root penuh — pasang Let's Encrypt, atur perpanjangan otomatis, dan sesuaikan TLS. Mulai ฿150/bulan.

Pertanyaan yang Sering Diajukan

Sertifikat saya masih berlaku tapi tetap error. Kenapa?

Penyebab tersering adalah sertifikat perantara yang hilang. Sertifikat Anda valid tapi browser tidak bisa menghubungkannya ke otoritas root tepercaya. Jalankan "openssl s_client -connect domain.com:443"; kalau muncul "unable to get local issuer certificate", itulah masalahnya.

Kenapa situs terbuka di desktop tapi error di ponsel?

Hampir selalu rantai sertifikat yang tidak lengkap. Browser desktop biasanya mengunduh sendiri perantara yang hilang, sedangkan perangkat seluler dan aplikasi tidak. Situsnya tidak rusak "hanya di ponsel" — rantainya kurang di mana-mana, hanya saja desktop menyembunyikannya.

Bolehkah mengabaikan peringatan dan tetap melanjutkan?

Tidak, kecuali itu server Anda sendiri dan Anda tahu persis penyebab peringatannya. Peringatan SSL juga persis yang muncul saat ada pihak yang menyadap koneksi, jadi membiasakan diri menekan "lanjutkan" berarti mematikan perlindungan itu sendiri.

Bagaimana error SSL memengaruhi peringkat pencarian?

Langsung dan cepat. Googlebot tidak bisa menyelesaikan handshake sehingga tidak mendapat konten, dan halaman yang tidak bisa di-crawl tidak bertahan di indeks. HTTPS juga merupakan sinyal peringkat, jadi sertifikat yang rusak memblokir crawl sekaligus menghilangkan sinyal itu bersamaan.