Cara memperbaiki error “Localhost refused to connect” (5 metode)
Pernahkah Anda mengalami error “localhost refused to connect” atau “ERR_Connection_Refused” saat menangani tugas yang berkaitan dengan localhost?
Jadi, ketika mengakses sebuah alamat IP, Anda sebenarnya sedang mencoba terhubung ke komputer lain. Nah, localhost menggunakan alamat jaringan loopback sehingga koneksinya mengarah ke komputer Anda sendiri.
Itulah mengapa localhost biasanya digunakan untuk menguji program atau website yang masih dalam pengembangan, karena bisa mengurangi risiko downtime pada website yang sudah online. Namun, apabila tidak bisa mengakses localhost, artinya Anda juga tidak akan bisa mengakses proyek yang dikembangkan di lingkungan lokal.
Penyebab error ini bisa dari berbagai faktor, seperti pada tabel di bawah ini. Perlu diingat juga bahwa untuk mengakses localhost, Anda harus menggunakan sistem lokal, tidak bisa di perangkat lain.
Kode error | Localhost Refused to Connect |
Jenis error | Browser/Firewall |
Variasi error | ERR_CONNECTION_REFUSED 127.0.0.1 refused to connect This site can’t be reached localhost refused to connect. |
Penyebab error | Server diblokir oleh firewall Server berjalan pada port yang salah Server Apache tidak berjalan dengan benar Browser perlu dikonfigurasi ulang |
Apa arti “Localhost refused to connect?”
Error “Localhost refused to connect” menandakan bahwa sistem Anda tidak bisa terhubung ke server lokal. Pada dasarnya, localhost adalah sistem yang berfungsi sebagai web server yang berjalan di komputer Anda. Ketika error ini muncul, kemungkinan besar penyebabnya adalah kesalahan konfigurasi port. Namun, ada beberapa alasan lain, seperti izin yang tidak memadai atau masalah dengan server Apache yang tidak berjalan dengan baik.
5 cara mengatasi “localhost refused to connect”
Berikut adalah lima cara untuk mengatasi error “localhost refused to connect” yang bisa Anda coba. Metode di bagian ini tidak memiliki urutan tertentu, jadi cobalah satu per satu sampai masalah Anda teratasi.
1. Pastikan Apache berjalan
Apabila web server Apache tidak berjalan, Anda tidak akan bisa mengakses localhost.
Untuk memeriksa status Apache di XAMPP, cukup buka XAMPP lalu lihat tombol di samping Apache. Kalau Anda melihat tombol Start, artinya Apache belum berjalan. Klik tombol tersebut untuk mengaktifkannya.

Kalau menggunakan Linux, perintahnya akan berbeda-beda tergantung pada distribusi yang digunakan.
Untuk Debian atau Ubuntu:
$ sudo systemctl status apache2
Untuk CentOS/RHEL/Fedora:
# systemctl status httpd
Perintah ini akan memberi tahu Anda apakah server sedang berjalan atau berhenti.
Apabila server berhenti, coba restart dengan perintah berikut:
Untuk Debian dan Ubuntu:
sudo systemctl restart apache2
Untuk CentOS/RHEL/Fedora:
# systemctl restart httpd
Output perintah restart akan terlihat seperti ini:
* Restarting web server apache2 [ OK ]
Kalau gagal, Anda akan menerima pesan error yang berbeda-beda tergantung pada distribusi yang digunakan, seperti:
apache2: unrecognized service
Failed to restart apache2.service: Unit apache.service failed to load: No such file or directory.
Apabila Anda melihat pesan-pesan error ini, coba instal ulang layanan Apache. Setelah terinstal dengan benar, coba restart kembali menggunakan perintah yang sesuai.
2. Buat koneksi lewat port yang ditentukan
Nomor port default untuk web server adalah 80. Ketika Anda mencoba mengaksesnya dengan mengetikkan localhost di browser, Anda akan secara otomatis diarahkan ke localhost:80.
Namun, apabila server Anda tidak dikonfigurasi untuk menggunakan port default tersebut, Anda akan melihat error “localhost refused to connect”.
Terkadang, port 80 sudah digunakan oleh aplikasi lain di komputer Anda. Sebagai contoh, kalau aplikasi Skype sedang menggunakannya, Anda tidak akan bisa menjalankan Apache pada port yang sama.
Untuk mengatasi masalah ini, periksa dulu apakah port 80 tidak sedang dipakai. Kita akan menggunakan XAMPP di tutorial ini. Berikut adalah langkah-langkah untuk memeriksa port yang sedang digunakan di Windows dan Linux, yang akan sedikit berbeda di Mac:
- Klik Start Menu untuk membuka XAMPP.
- Klik tombol Netstat di sisi kanan control panel.

- Anda akan melihat semua port yang digunakan di komputer Anda. Cek apakah port 80 kosong atau digunakan oleh aplikasi lain.

- Apabila port 80 sudah digunakan oleh aplikasi lain, pilih nomor port yang kosong, misalnya port 8080.
Selanjutnya, Anda perlu mengubah konfigurasi untuk membuat koneksi ke nomor port yang benar menggunakan perintah listen.
Perintah ini digunakan untuk mengatur Apache HTTPd agar hanya memantau alamat IP atau port tertentu. Apabila perintah ini tidak ada dalam file config, server Anda tidak akan bisa berjalan.
Berikut langkah-langkah untuk mengubah port Apache di XAMPP:
- Buka XAMPP di perangkat Anda.
- Program ini akan terbuka, menampilkan daftar semua layanan yang sedang berjalan.
- Klik tombol Stop di sebelah Apache.

- Buka file explorer, lalu cari file httpd.conf di folder config. Di Windows, file ini berada di direktori C:\xampp\apache\conf. Untuk Linux, lokasinya adalah bin/apache. Di Mac, file ini ada di Applications/XAMPP/xamppfiles/etc/httpd.conf.
- Buka file tersebut menggunakan Notepad atau editor teks lainnya, lalu cari baris berikut:
Listen 80 ServerName localhost:80
- Kalau port 80 masih kosong, pastikan nomor port pada perintah listen sesuai dengan nomor port yang digunakan oleh localhost. Apabila ada aplikasi lain yang menggunakan port 80, ganti dengan nomor port lain yang tersedia. Misalnya, kita akan mengubahnya ke 8080.
Listen 8080 ServerName localhost:8080
- simpan file tersebut. Anda mungkin akan diminta untuk memberikan hak administratif, pilih Yes.
- Kembali ke control panel XAMPP, klik Start untuk memulai Apache lagi.
- Akses http://localhost:8080 atau https://127.0.0.1:8080/ untuk memeriksa apakah localhost berfungsi dengan benar.
Apabila menggunakan WAMP (untuk sistem operasi Windows), ikuti langkah-langkah berikut untuk mengubah port yang digunakan:
- Klik kanan taskbar, lalu pilih Task Manager.
- Pilih End Task untuk semua instance WAMP yang masih berjalan.
- Buka file explorer, lalu buka folder konfigurasi di C:\wamp\apache2\conf.
- Cari file httpd.conf, buka dengan editor teks seperti Notepad.
- Cari baris berikut ini dalam file tersebut:
Listen 80 ServerName localhost:80
- Apabila port 80 tidak dipakai, pastikan nomor port pada perintah listen sama dengan nomor port untuk localhost. Apabila port sudah digunakan oleh aplikasi lain, ganti nomornya dengan port yang tersedia.
Listen 8080 ServerName localhost:8080
- Simpan file, lalu buka kembali WAMP untuk memeriksa apakah masalah sudah teratasi.
3. Hapus cache DNS
Cache DNS menyimpan data dari website yang pernah Anda kunjungi sehingga halaman-halaman tersebut akan dimuat lebih cepat saat Anda mengaksesnya lagi.
Namun, kalau cache DNS terlalu penuh dengan data lama, hal ini bisa menyebabkan DNS tidak berfungsi dengan baik.
Untuk mengatasinya, Anda bisa melakukan flush DNS untuk menghapus cache tersebut.
- Buka Command Prompt dengan mengetikkan cmd di kolom pencarian pada menu Start.
- Masukkan perintah berikut:
ipconfig /flushdns
- Cek apakah error “127.0 0.1 refused to connect” sudah berhasil teratasi.
4. Nonaktifkan firewall untuk sementara
Firewall adalah sistem keamanan yang memantau dan memfilter traffic data Anda, serta memblokir potensi ancaman. Meskipun penting, terkadang protokol deteksinya bisa keliru.
Firewall mungkin memblokir halaman web yang aman atau koneksi yang sah secara tidak sengaja. Jadi, kalau Anda sedang mengembangkan website dan perlu mengakses versi lokalnya, coba nonaktifkan firewall dulu untuk sementara. Dengan begitu, website uji coba Anda tidak akan diblokir.
Pastikan untuk mengaktifkannya kembali setelah website Anda online dan masalah “localhost refused to connect” tidak lagi muncul.
Berikut langkah-langkah untuk menonaktifkan firewall di Mac, Windows, dan Linux.
Cara menonaktifkan firewall di Mac
- Buka System Settings → Network.
- Pilih opsi Firewall untuk membuka pengaturan firewall.
- Klik tombol alih di samping Firewall untuk menonaktifkannya.

- Tergantung pada pengaturan yang diterapkan, Anda mungkin diminta memasukkan kata sandi Anda. Klik Unlock setelah memasukkan kata sandi.
- Firewall Anda kini sudah aktif.
Perlu diperhatikan bahwa langkah-langkah ini mungkin sedikit berbeda tergantung pada versi macOS yang Anda gunakan.
Cara menonaktifkan firewall di Windows
Ada dua cara untuk menonaktifkan firewall di Windows, yaitu melalui menu Windows Security/Control Panel atau Command Prompt.
Berikut langkah-langkahnya menggunakan menu Windows:
- Buka Windows Security, kemudian pilih Firewall & network protection.
- Anda akan melihat jaringan yang tersambung. Pilih jaringan untuk menonaktifkan firewall.

- Pada Microsoft Defender Firewall, alihkan tombol ke nonaktif.
Apabila opsi ini tidak bisa diklik, firewall Anda mungkin dikontrol oleh program keamanan lain. Jadi, Anda mungkin perlu menonaktifkan aplikasi tersebut dulu.
Sementara itu, berikut langkah-langkah mematikan firewall melalui command prompt:
- Buka Command Prompt sebagai Administrator.
- Masukkan perintah berikut:
netsh advfirewall set allprofiles state off
Cara menonaktifkan firewall di Linux
Langkah untuk menonaktifkan firewall di Linux tergantung pada distribusi yang Anda gunakan.
Apabila menggunakan Ubuntu atau Debian, firewall Anda seharusnya dikelola oleh ufw. Kalau menggunakan CentOS atau RHEL, tool manajemen firewall defaultnya adalah firewalld.
Pastikan untuk menghentikan firewall terlebih dahulu sebelum menonaktifkannya. Kalau tidak, Anda bisa mengalami error selama prosesnya.
Untuk menonaktifkan firewall di ufw, ikuti langkah-langkah berikut:
- Hentikan ufw menggunakan perintah berikut:
sudo ufw disable
- Setelah firewall dihentikan, jalankan perintah berikut untuk menonaktifkan layanan ufw saat booting:
sudo systemctl disable ufw
- Verifikasikan bahwa ufw telah dimatikan, dengan memasukkan perintah berikut:
sudo ufw status sudo systemctl status ufw
- Aktifkan kembali ufw.
sudo systemctl enable ufw sudo ufw enable ## verify that ufw started ## sudo ufw status
Kemudian, berikut adalah langkah-langkah menghentikan dan menonaktifkan firewall pada firewalld:
- Hentikan firewalld menggunakan perintah berikut:
sudo systemctl stop firewalld
- Masukkan perintah di bawah ini untuk menonaktifkan firewalld pada saat boot:
sudo systemctl disable firewalld sudo systemctl mask --now firewalld
- Pastikan firewalld telah dinonaktifkan dengan menggunakan perintah berikut ini:
sudo systemctl status firewalld
- Jalankan perintah di bawah ini untuk mengaktifkan kembali firewalld:
sudo systemctl unmask --now firewalld sudo systemctl enable firewalld sudo systemctl start firewalld ## verify that the firewalld started ## sudo firewall-cmd --state
5. Periksa pengaturan browser
Pengaturan browser juga bisa menyebabkan error “localhost refused to connect”, karena setiap browser memiliki pengaturan dan karakteristik yang berbeda.
Misalnya, beberapa browser akan secara otomatis mengarahkan Anda ke versi HTTPS saat memasukkan alamat HTTP. Namun, kalau website tersebut tidak memiliki sertifikat SSL yang valid, Anda akan menjumpai error “localhost refused to connect”.
Apabila menggunakan Chrome, ikuti langkah-langkah berikut:
- Masukkan chrome://net-internals/#hsts di kolom alamat browser.

- Cari opsi Delete domain security policies, lalu ketik localhost.

- Mulai ulang browser Anda.
Perbedaan antara “ERR_CONNECTION_REFUSED” dan “ERR_CONNECTION_TIMEOUT”
Saat mencoba mengakses localhost, Anda mungkin menemui dua jenis error yang sering muncul: ERR_CONNECTION_REFUSED dan ERR_CONNECTION_TIMEOUT. Meskipun sangat mirip dan saling berkaitan, keduanya memiliki penyebab dan solusi yang berbeda.
ERR_CONNECTION_REFUSED menunjukkan bahwa server menolak upaya untuk membuat koneksi, sementara ERR_CONNECTION_TIMEOUT menunjukkan bahwa tidak ada respons sama sekali dari server, sementara klien masih menunggu.
Oleh karena itu, untuk mengatasi ERR_CONNECTION_REFUSED, periksa dulu firewall Anda karena sistem ini bisa saja memblokir paket data yang masuk. Selain itu, pastikan konfigurasi perintah listen di file httpd.conf sudah diatur dengan benar.
Sedangkan untuk mengatasi ERR_CONNECTION_TIMEOUT, periksa pengaturan koneksi Anda karena error ini biasanya muncul ketika layanan tidak berjalan sebagaimana mestinya atau tidak terinstal dengan benar.
Kesimpulan
Error “localhost refused to connect” adalah masalah koneksi jaringan yang mungkin muncul saat Anda menangani tugas yang berkaitan dengan web server lokal.
Masalah ini biasanya terjadi ketika firewall memblokir server atau ketika Anda menggunakan port yang salah. Selain itu, error ini juga bisa muncul kalau web server Apache atau web browser tidak dikonfigurasi dengan benar.
Berikut langkah-langkah untuk mengatasi error “localhost refused to connect”:
- Nonaktifkan firewall untuk sementara. Matikan firewall agar tidak memblokir akses ke localhost Anda.
- Lakukan flush DNS. Hapus cache DNS untuk menghindari masalah dengan data yang sudah kedaluwarsa.
- Buat sambungan dengan port yang ditentukan. Periksa apakah port yang digunakan oleh web server Apache sesuai dengan pengaturan.
- Pastikan Apache berjalan. Pastikan web server Apache sudah terinstal dengan benar dan aktif.
- Sesuaikan pengaturan browser. Periksa pengaturan koneksi pada browser Anda, terutama kalau tidak ada sertifikat SSL pada website lokal yang sedang diuji.
Semoga artikel ini bisa membantu Anda mengatasi error “localhost refused to connect” ya. Kalau masih ada pertanyaan, sampaikan lewat kolom komentar yuk!
Tanya jawab (FAQ) “Localhost refused to connect”
Apakah ada cara lain agar tidak menggunakan localhost?
Alternatif untuk menggunakan localhost dalam pengembangan lokal adalah dengan menggunakan alamat IP komputer Anda sebagai host. Anda bisa menemukan alamat IP ini di System Preferences atau dengan mengetikkan ipconfig di Command Prompt (untuk Windows), atau ifconfig di Terminal (untuk Mac atau Linux).
Apa yang dimaksud alamat IP localhost?
Alamat IP localhost merujuk pada komputer yang Anda gunakan. Alamat ini adalah alamat IP dari antarmuka jaringan loopback, yang biasanya diberi alamat 127.0.0.1. Alamat ini digunakan untuk mengakses layanan jaringan pada komputer yang sama tanpa terhubung ke jaringan eksternal.