Setiap alamat yang Anda ketik di kolom alamat browser pada akhirnya menunjuk ke sebuah komputer di suatu tempat. Mengetik indowebsite.co.id berarti meminta halaman dari server yang berada di sebuah pusat data, entah di Jakarta atau di benua lain. Prinsipnya selalu sama: permintaan berjalan keluar dari komputer Anda, menyeberangi jaringan, lalu kembali membawa jawaban.
Ada satu nama yang berperilaku berbeda dari semuanya. Berapa kali pun diketik dan dari mesin mana pun, nama itu tidak pernah menuju ke luar. Ia selalu menunjuk balik ke komputer yang sedang Anda pakai saat itu juga. Nama tersebut adalah localhost.
Localhost adalah nama host yang selalu merujuk ke komputer yang sedang menjalankan permintaan itu sendiri. Kalau Anda mengetik http://localhost di laptop kantor, yang dituju adalah laptop kantor tersebut. Kalau rekan Anda mengetik alamat yang sama persis di komputernya, yang dituju adalah komputernya, bukan laptop Anda. Tidak ada satu pun mesin di internet yang bisa membuka localhost milik orang lain.
Localhost Adalah Nama, 127.0.0.1 Adalah Alamatnya
Dua istilah ini sering dianggap sama, padahal posisinya berbeda. Host dalam istilah jaringan berarti perangkat yang terhubung dan punya alamat — bisa berupa server, laptop, atau ponsel. Localhost, dengan awalan local, berarti host yang sedang Anda pakai sekarang.
Localhost adalah nama. Nama itu perlu diterjemahkan menjadi angka supaya bisa dipakai, dan angka hasil terjemahannya adalah 127.0.0.1 — yang disebut loopback address (alamat putar-balik). Hubungannya mirip nama orang dan nomor kontaknya: satu merujuk ke yang lain, tetapi keduanya bukan hal yang identik.
Ada tiga hal tentang angka ini yang jarang tersampaikan:
- 127.0.0.1 bukan satu-satunya alamat loopback. Seluruh blok 127.0.0.0/8 dicadangkan untuk keperluan ini. Itu berarti 16.777.216 alamat, dari 127.0.0.1 sampai 127.255.255.254, semuanya mengarah balik ke komputer sendiri. Mengetik
http://127.0.0.2akan sampai ke tempat yang sama. Blok ini berstatus cadangan sejak 1981 dan resmi ditetapkan untuk loopback pada 1986. - Localhost juga punya alamat versi IPv6, yaitu
::1. Pada sistem operasi modern, nama localhost bisa diterjemahkan ke127.0.0.1maupun::1tergantung mana yang didahulukan. Inilah sebabnya sebagian aplikasi berjalan normal di127.0.0.1tetapi menolak koneksi dilocalhost, atau sebaliknya. - Terjemahan itu terjadi di komputer Anda sendiri. Untuk memahami kenapa nama biasa perlu server penerjemah, silakan baca pembahasan DNS adalah. Localhost justru dikecualikan dari mekanisme itu, dan alasannya dibahas di bagian berikutnya.
Konsep alamat yang menjadi identitas sebuah perangkat di jaringan diuraikan lebih jauh di artikel IP address adalah.
Bagaimana Data Berputar Tanpa Menyentuh Kabel Jaringan
Saat Anda membuka sebuah website, data harus melewati kartu jaringan, kabel atau WiFi, router, jaringan penyedia internet, sampai akhirnya tiba di server tujuan. Permintaan ke localhost memangkas seluruh rantai itu.
Sistem operasi menyediakan antarmuka khusus bernama loopback interface — antarmuka jaringan buatan yang tidak punya wujud fisik. Paket data yang ditujukan ke 127.0.0.1 diproses di lapisan penghubung (link layer) lalu langsung dibelokkan kembali ke atas, ke aplikasi yang sedang mendengarkan. Paket tersebut tidak pernah sampai ke perangkat keras jaringan mana pun.
Diagram dua jalur: permintaan ke website internet lewat router dan awan, permintaan ke localhost berputar balik ke komputer.
Dua akibat praktisnya perlu Anda ingat:
- Localhost tetap bekerja meskipun WiFi dimatikan. Website yang sedang Anda kembangkan di komputer sendiri bisa dibuka di pesawat, di daerah tanpa sinyal, atau saat kabel jaringan dicabut. Ini yang membuat aplikasi pendataan sekolah masih dapat digunakan di lokasi dengan koneksi buruk.
- Kecepatannya tidak dibatasi bandwidth internet. Karena data tidak keluar, tidak ada antrean di kabel maupun jarak fisik yang harus ditempuh.
Standar RFC 6761 yang terbit pada 2013 memperkuat hal ini di tingkat aturan. Dokumen tersebut menyatakan bahwa pustaka penerjemah nama wajib memperlakukan localhost sebagai nama istimewa dan selalu menjawabnya dengan alamat loopback. Lebih tegas lagi, permintaan untuk nama localhost tidak boleh dikirim ke DNS server yang dikonfigurasi. Jadi tidak ada perjalanan ke server penerjemah, tidak ada jeda pencarian nama, dan tidak ada cara bagi pihak luar untuk membajak arti kata localhost di komputer Anda.
Lima Pekerjaan yang Diselesaikan Localhost
Fungsi localhost lebih luas daripada sekadar tempat mencoba website. Berikut lima pemakaian yang paling sering ditemui:
- Menguji website sebelum dipublikasikan: Anda dapat memasang WordPress, membangun aplikasi PHP, atau menata ulang tema secara utuh tanpa satu pun pengunjung melihat prosesnya. Kesalahan yang terjadi hanya terlihat oleh Anda.
- Menjalankan aplikasi yang antarmukanya berupa halaman web: sejumlah aplikasi dipasang di komputer, tetapi dioperasikan lewat browser. Aplikasi Dapodik dan Rapor Digital Madrasah termasuk kelompok ini, dan bagian berikutnya membahas alamatnya secara khusus.
- Mengelola basis data lewat phpMyAdmin: alamat
localhost/phpmyadminmembuka antarmuka pengelolaan tabel, kolom, dan isi basis data. Perintah yang dijalankan di baliknya dibahas di artikel MySQL adalah. - Memblokir akses ke situs tertentu: berkas
hostsmemungkinkan Anda memetakan sebuah domain ke 127.0.0.1 secara manual. Berkas itu berada diC:\Windows\System32\drivers\etc\hostspada Windows, serta di/etc/hostspada Linux dan macOS. Efeknya, permintaan ke domain tersebut berputar balik ke komputer sendiri dan gagal terbuka. Cara ini kerap dipakai untuk membatasi akses pada komputer bersama. - Memeriksa kesehatan tumpukan jaringan komputer sendiri: mengirim ping ke 127.0.0.1 menguji apakah perangkat lunak jaringan di komputer Anda berfungsi. Kalau ping ke alamat ini pun gagal, masalahnya ada di sistem operasi, bukan di kabel atau penyedia internet.
Arti Angka di Belakang Titik Dua: localhost:8080 dan Kawan-kawannya
Bagian yang paling sering membingungkan justru bukan kata localhost-nya, melainkan angka setelah tanda titik dua. Angka itu adalah nomor port.
Kalau alamat menentukan komputer mana yang dituju, port menentukan layanan mana di dalam komputer tersebut yang dituju. Satu komputer bisa menjalankan banyak layanan sekaligus, dan masing-masing menempati nomor port yang berbeda supaya tidak saling menimpa. Pembahasan lengkap tentang mekanismenya ada di artikel port adalah.
Ilustrasi bangunan komputer bertuliskan localhost dengan empat pintu bernomor 80, 3306, 5774, dan 8080.
Beberapa nomor yang paling sering Anda temui:
| Alamat | Layanan yang biasanya menempatinya |
|---|---|
localhost (tanpa angka) | Apache atau Nginx di port 80, port bawaan untuk HTTP |
localhost:1203 | Rapor Digital Madrasah (RDM) |
localhost:3000 | Server pengembangan Node.js, React, dan Next.js |
localhost:3306 | MySQL atau MariaDB |
localhost:5173 | Server pengembangan Vite |
localhost:5774 | Aplikasi Dapodik |
localhost:8000 | Django dan perintah php artisan serve pada Laravel |
localhost:8080 | Apache Tomcat, atau alternatif HTTP saat port 80 sudah terpakai |
localhost:8888 | Jupyter Notebook dan sebagian paket MAMP |
Perhatikan dua baris yang berkaitan dengan pendataan pendidikan. Aplikasi Dapodik dipasang di komputer operator sekolah, lalu menyalakan web server internal di port 5774. Operator mengisi data lewat browser dalam keadaan luring, dan sinkronisasi ke pusat baru dilakukan ketika koneksi tersedia. Rapor Digital Madrasah bekerja dengan pola serupa di port 1203, dan telah dipakai madrasah negeri maupun swasta sejak semester ganjil tahun pelajaran 2021/2022.
Artinya banyak orang di Indonesia justru berkenalan dengan kata localhost lewat pekerjaan administrasi sekolah, bukan lewat pemrograman. Kalau Anda termasuk kelompok ini, pemahamannya sama saja: localhost:5774 berarti "buka layanan yang sedang menempati pintu nomor 5774 di komputer ini". Ketika halaman itu tidak terbuka, yang bermasalah adalah aplikasinya di komputer tersebut, bukan koneksi internet ke Kemendikdasmen.
Alamat localhost tidak bisa dikirimkan ke orang lain. Menyalin
http://localhost:5774lalu mengirimkannya lewat pesan tidak akan membuka data Anda. Di komputer penerima, alamat itu mengarah ke komputer penerima sendiri.
Localhost Bukan Aplikasi yang Bisa Anda Pasang
Kekeliruan yang umum: mencari "aplikasi localhost" untuk diunduh. Localhost hanyalah nama, dan nama tidak bisa dipasang. Yang perlu dipasang adalah perangkat lunak yang mendengarkan di alamat tersebut.
Perangkat lunak itu disebut web server — program yang menunggu permintaan dan mengirimkan halaman sebagai jawaban. Ada dua cara umum menghadirkannya di komputer pribadi:
Pertama, paket siap pakai. XAMPP adalah yang paling banyak dipakai di Indonesia. Satu pemasangan sekaligus membawa web server Apache, basis data MariaDB, dan penerjemah PHP. Laragon dan WAMP menawarkan isi yang serupa dengan pengaturan yang sedikit berbeda. Setelah dipasang, berkas website ditaruh di folder htdocs (pada XAMPP), lalu diakses lewat http://localhost/nama-folder.
Satu hal dari paket ini yang sering membingungkan adalah alamat localhost/phpmyadmin. phpMyAdmin bukan basis datanya, melainkan halaman web untuk mengelola basis data. Halaman itu disajikan Apache di port 80, sementara MySQL sendiri mendengarkan di port 3306 dan tidak bisa dibuka lewat browser. Karena itu ketika localhost/phpmyadmin gagal terbuka, yang perlu diperiksa lebih dahulu adalah Apache, bukan MySQL.
Kedua, server bawaan kerangka kerja. Sebagian besar perkakas pengembangan modern sudah membawa server sendiri, sehingga tidak perlu memasang paket terpisah. Perintah seperti php artisan serve, npm run dev, atau python manage.py runserver menyalakan server sementara dan langsung mencetak alamatnya di layar.
Cara membuka localhost setelahnya cukup ringkas: nyalakan service dari panel kontrol XAMPP (atau jalankan perintah server), buka browser, lalu ketik http://localhost di kolom alamat. Pada XAMPP, halaman bawaan yang muncul adalah localhost/dashboard. Kalau yang tampil justru daftar folder, itu berarti server berjalan normal tetapi belum ada berkas index.php atau index.html di dalamnya.
Untuk langkah pemasangan yang lebih rinci, silakan ikuti panduan cara install WordPress di localhost.
Kenapa HP Anda Tidak Bisa Membuka Localhost Komputer
Pertanyaan ini muncul hampir di setiap proyek pertama. Website sudah tampil sempurna di browser komputer, tetapi ketika alamat yang sama dibuka di ponsel yang tersambung ke WiFi yang sama, hasilnya gagal.
Penyebabnya ada dua lapis. Lapis pertama sudah jelas dari definisi di awal: mengetik localhost di ponsel berarti meminta halaman dari ponsel itu sendiri, bukan dari komputer Anda. Nama tersebut tidak pernah menunjuk ke perangkat lain.
Lapis kedua lebih teknis. Banyak server pengembangan secara bawaan hanya mengikatkan diri (binding) ke alamat 127.0.0.1. Server yang terikat ke alamat itu memang dirancang untuk melayani mesin lokal saja, sehingga permintaan dari perangkat lain ditolak sebelum sempat diproses. Supaya bisa dijangkau perangkat lain di jaringan yang sama, server harus diikatkan ke 0.0.0.0 yang berarti "dengarkan semua antarmuka". Setelah itu aplikasi diakses lewat alamat IP lokal komputer Anda, misalnya http://192.168.1.10:3000. Firewall di komputer juga harus mengizinkan port tersebut.
Diagram: server terikat 127.0.0.1 tidak bisa dibuka dari ponsel, sedangkan terikat 0.0.0.0 bisa dijangkau di jaringan sama.
Jaringan lokal tidak lagi mencukupi untuk keperluan yang lebih jauh, misalnya mendemokan pekerjaan kepada klien di kota lain. Yang dibutuhkan adalah terowongan yang memberi alamat publik sementara kepada aplikasi lokal Anda, sebagaimana dibahas di artikel ngrok adalah.
Batasan Localhost yang Perlu Anda Pahami
Localhost menyelesaikan banyak hal, tetapi ada empat batas yang sebaiknya Anda sadari sejak awal.
- Hanya menyala selama komputer Anda menyala. Tidak ada pengunjung yang bisa membuka halaman Anda, dan tidak ada mesin pencari yang bisa mengindeksnya. Ketika sebuah website sudah siap dilihat orang lain, ia perlu server yang menyala terus-menerus dan punya alamat publik. Inilah peran layanan web hosting. Perbedaan mendasar keduanya diuraikan di artikel hosting adalah, sementara langkah pemindahannya ada di panduan transfer WordPress dari localhost ke server.
- Lingkungannya tidak sama dengan server sungguhan. Versi PHP, ekstensi yang aktif, batas memori, dan sistem operasi di komputer Anda biasanya berbeda dari server produksi. Kalimat "di komputer saya berjalan normal" karena itu bukan jaminan apa pun. Selisih versi kecil sudah cukup untuk memunculkan kesalahan yang tidak pernah terlihat sebelumnya.
- Tidak ada pencadangan otomatis. Berkas dan basis data di komputer pribadi tidak dicadangkan oleh siapa pun kecuali Anda sendiri. Kerusakan penyimpanan atau kesalahan menghapus folder berarti pekerjaan hilang tanpa jejak.
- HTTPS di localhost merepotkan. Sertifikat tepercaya diterbitkan untuk nama domain publik yang kepemilikannya bisa diverifikasi, dan localhost bukan salah satunya. Sertifikat yang Anda buat sendiri akan tetap ditandai tidak aman oleh browser.
Khusus batas terakhir, ada penyeimbang yang layak diketahui. Browser modern memperlakukan http://localhost, http://127.0.0.1, dan seluruh nama berakhiran .localhost sebagai secure context. Konteks itu dianggap tepercaya karena sumbernya berada di mesin yang sama dengan browser. Konsekuensinya, fitur yang biasanya menuntut HTTPS seperti service worker, akses kamera, mikrofon, dan geolokasi tetap berfungsi di localhost tanpa satu pun sertifikat. Firefox mengikuti perlakuan ini sejak versi 84 yang rilis pada Desember 2020. Jadi dalam banyak kasus, memaksakan HTTPS di lingkungan lokal tidak diperlukan sama sekali.
Tiga Pesan Kesalahan Localhost dan Penyebabnya
Ketika localhost tidak bisa diakses, browser hampir selalu memberi petunjuk lewat pesan yang ditampilkan. Tiga pesan berikut mencakup mayoritas kasus.
localhost refused to connect
Pesan ini berarti tidak ada layanan yang mendengarkan di port yang Anda tuju. Tiga penyebab yang paling sering:
- Service belum dijalankan. Pada XAMPP, Apache dan MySQL harus ditekan tombol Start terlebih dahulu. Indikatornya berubah hijau ketika sudah berjalan.
- Port sudah direbut aplikasi lain. Port 80 kerap dipakai IIS pada Windows, VMware, atau layanan lain yang berjalan diam-diam di latar belakang. Solusinya mengubah port Apache ke 8080 lewat berkas
httpd.conf, lalu mengaksesnya dihttp://localhost:8080. - Nomor port salah ketik. Aplikasi berjalan di 5774 tetapi yang dibuka 5744 akan menghasilkan pesan yang sama persis.
Untuk memeriksa port mana yang sedang dipakai di Windows, jalankan netstat -ano | findstr :80 di Command Prompt. Angka di kolom paling kanan adalah nomor proses yang bisa Anda telusuri di Task Manager.
localhost sent an invalid response (ERR_SSL_PROTOCOL_ERROR)
Pesan ini muncul ketika browser mencoba berbicara dalam HTTPS, sementara server lokal hanya melayani HTTP polos. Sering terjadi karena browser otomatis mengubah alamat yang Anda ketik menjadi https://localhost, atau karena riwayat pengalihan yang tersimpan dari percobaan sebelumnya.
Langkah pertama yang paling ringan: ketik alamatnya secara lengkap dengan http:// di depan, misalnya http://localhost/nama-proyek. Kalau pesan tetap muncul, bersihkan riwayat pengalihan HSTS lewat halaman chrome://net-internals/#hsts di Chrome. Penyebab lain yang mungkin adalah port 443 yang sudah dipakai layanan lain, sehingga modul SSL Apache gagal berjalan.
403 Forbidden
Server berjalan dan port benar, tetapi akses ke folder ditolak. Umumnya karena berkas index.php atau index.html tidak ada di folder tujuan sementara penampilan daftar berkas dimatikan, atau karena izin folder tidak mengizinkan pembacaan. Periksa penamaan berkas indeks lebih dahulu sebelum menyentuh berkas konfigurasi.
Pertanyaan yang Sering Muncul
Localhost ada di mana secara fisik? Localhost tidak berada di lokasi tertentu. Ia adalah komputer yang sedang Anda gunakan saat itu — laptop, komputer kantor, atau ponsel, tergantung perangkat mana yang mengetik alamat tersebut.
Apa beda localhost dan 127.0.0.1?
Localhost adalah namanya, 127.0.0.1 adalah alamat yang ditunjuk nama itu. Keduanya hampir selalu mengarah ke tempat yang sama, tetapi localhost bisa juga diterjemahkan ke alamat IPv6 ::1, sehingga pada kasus tertentu keduanya berperilaku sedikit berbeda.
Apakah localhost membutuhkan koneksi internet? Tidak. Data tidak pernah keluar dari komputer, sehingga localhost tetap dapat diakses saat WiFi dimatikan atau kabel jaringan dicabut.
Bagaimana memastikan localhost sedang berjalan?
Buka http://localhost di browser. Kalau halaman bawaan server muncul, layanan sudah aktif. Cara lain adalah menjalankan ping 127.0.0.1 untuk memastikan tumpukan jaringan komputer sehat, lalu memeriksa status service di panel kontrol XAMPP.
Kenapa localhost/phpmyadmin tidak bisa dibuka?
Penyebab paling sering adalah Apache yang belum berjalan, karena halaman phpMyAdmin disajikan oleh Apache dan bukan oleh MySQL. Kalau Apache sudah hijau di panel XAMPP tetapi halaman tetap gagal, periksa apakah port 80 sedang dipakai aplikasi lain, lalu coba http://localhost:8080/phpmyadmin.
Apakah localhost aman dari akses luar?
Layanan yang hanya terikat ke 127.0.0.1 tidak dapat dijangkau dari jaringan mana pun. Keamanan itu hilang begitu Anda mengubah pengikatan ke 0.0.0.0 atau membuka terowongan ke internet. Sejak saat itu layanan Anda benar-benar terekspos dan perlu diperlakukan seperti server sungguhan.
Kesimpulan
Localhost adalah nama yang selalu menunjuk balik ke komputer yang sedang Anda pakai, dengan 127.0.0.1 sebagai alamat yang diwakilinya. Data yang menuju ke sana berputar di dalam sistem operasi tanpa menyentuh kartu jaringan, sehingga tetap bekerja tanpa internet. Angka di belakang tanda titik dua menentukan layanan mana yang dituju, dan angka itulah yang membedakan localhost:5774 milik operator sekolah dari localhost:3000 milik pengembang aplikasi.
Batasnya juga jelas. Selama pekerjaan Anda cukup dilihat sendiri, localhost adalah tempat yang tepat untuk mencoba, salah, dan memperbaiki tanpa risiko. Begitu hasilnya harus bisa dibuka orang lain kapan saja, pekerjaan itu perlu berpindah ke server yang menyala terus-menerus.
Semoga artikel ini membantu.




