HTTP adalah teknologi yang memiliki peran penting di era internet. Hampir semua aktivitas yang terjadi di internet dilakukan dengan cara mengirim permintaan melalui HTTP. Jadi tanpa HTTP, cara kerja internet yang kamu kenal saat ini tidak akan lahir.
Lantas, apa sebenarnya yang dimaksud dengan HTTP? Bagaimana cara kerja dan cara bikinnya? Yuk pelajari teknologi HTTP lebih jauh lagi dalam artikel ini.
Pengertian HTTP
Hypertext Transfer Protocol atau HTTP adalah sebuah protokol yang digunakan untuk menjalankan proses transfer data di internet antara klien dan server sehingga kamu bisa mengakses website dan juga platform lainnya. Data yang ditransfer bentuknya bisa apa saja, mulai dari gambar, video, file, atau teks.
Dalam prakteknya, penggunaan protokol HTTP ini berkaitan dengan hypertext. Hypertext sendiri merupakan teks yang berisi link ke sumber lain seperti link dari satu halaman website ke halaman website yang lain atau link dari direktori ke direktori lain.
Kesimpulannya, protokol HTTP memanfaatkan link untuk mengambil data dari sebuah sumber di internet lalu mengirimkannya ke perangkat lain.
Perbedaan HTTP dan HTTPS
HTTP dan HTTPS adalah dua istilah yang jika dilihat sekilas akan terlihat sama. Namun jika dipelajari lebih dalam lagi, keduanya memiliki beberapa perbedaan. Nah, kira-kira apa perbedaan HTTP dan HTTPS?
Keamanan
HTTPS atau Hypertext Transfer Protocol Secure adalah sebuah protokol yang menjamin keamanan proses transfer data. Aspek keamanan proses transfer data ini tidak ditemukan pada HTTP. Jadi bisa disimpulkan bahwa perbedaan utama antara HTTP dan HTTPS terletak pada aspek keamanan ini.
SSL
Dalam penerapannya, HTTPS memerlukan sertifikat SSL yang mampu menjamin kerahasiaan serta keamanan data selama proses transfer berlangsung. Artinya, data yang ada di website atau platform yang menggunakan HTTPS terlindungi dari kejahatan siber.
Port
Perbedaan HTTP dan HTTPS yang terakhir terletak pada jenis port yang digunakan. HTTP menggunakan port 80 yang transfer datanya masih melalui teks dan tidak terjamin keamanannya.
Sementara itu, HTTPS menggunakan port 443 yang dilengkapi dengan fitur enkripsi data. Jadi data yang ditransfer terjamin keamanannya dan tidak mudah diretas.
Fungsi HTTP

Secara umum, fungsi HTTP adalah membantu terjadinya proses transfer data antara klien dan server di internet. Di samping, ada juga beberapa fungsi lain, diantaranya:
Mengirim permintaan ke server
Protokol HTTP memungkinkan klien mengirimkan permintaan yang umumnya berupa Uniform Resource Locator (URL) ke server. URL merupakan alamat dari sumber daya yang ada di internet seperti gambar, video, halaman website, atau file lainnya.
Mengelola respons dari server web
Setelah server menerima permintaan dari klien, server akan mengirimkan respon balik ke klien melalui HTTP. Respon yang dikirimkan ini biasanya berisi informasi yang telah diminta oleh klien sebelumnya, seperti video, gambar, halaman website, atau file lainnya.
Menentukan aksi
Ketika HTTP mengelola proses transfer data, dia akan menentukan aksi yang mau dilakukan pada sumber daya target menggunakan metode tertentu. Metode yang digunakan ada beberapa macam, di antaranya:
| Metode | Aksi |
| GET | Mengambil data |
| POST | Membuat data baru |
| PUT | Memperbarui seluruh data |
| PATCH | Memperbarui sebagian data |
| DELETE | Menghapus data |
| OPTIONS | Meminta informasi tentang apa saja opsi komunikasi yang diijinkan |
| HEAD | Meminta header-nya saja |
| CONNECT | Mengirimkan permintaan ke proxy untuk membuat tunnel ke target |
| TRACE | Meminta pelacakan untuk permintaan HTTP |
Mengelola state
HTTP merupakan protokol yang dirancang dengan format stateless. Ini berarti, setiap permintaan yang dikirim oleh klien akan dianggap sebagai permintaan independen dan tidak berhbungan dengan permintaan lainnya. Dengan begitu server tidak akan menyimpan informasi mengenai klien pada setiap permintaan yang diterima.
Manipulasi konten
Data yang ditransfer melalui protokol HTTP bisa berbagai macam jenisnya, mulai dari teks, gambar, audio, hingga video. Setiap jenis konten bisa dikirimkan dalam respon HTTP dengan tipe yang tepat sehingga tampilan pada website jadi lebih variatif.
Menangani kesalahan
Saat mengirimkan permintaan, HTTP memakai kode status untuk menunjukkan apakah permintaan berhasil dikirimkan atau gagal. Dengan kode ini, klien bisa mengetahui status permintaannya lalu mengambil tindakan yang diperlukan.
Ada lima jenis kode status yang sering digunakan, yaitu:
| Kode Status | Arti |
| 1xx | Menginformasikan pada klien bahwa server sudah menerima permintaan dan sedang mengolahnya |
| 2xx | Menunjukkan bahwa permintaan dari klien berhasil diproses oleh server |
| 3xx | Memberitahu klien agar mengalihkan atau mengubah permintaan untuk memperoleh respon dari server |
| 4xx | Menunjukkan bahwa ada kesalahan pada permintaan yang dikirimkan dari klien |
| 5xx | Menunjukkan bahwa ada kesalahan pada server ketika memproses permintaan yang diterima dari klien |
Cara Kerja HTTP
Secara singkat, cara kerja HTTP dibagi menjadi tiga tahap, yaitu:
- Klien mengirimkan permintaan ke server
- Server memproses permintaan dari klien, sedangkan klien akan menunggu respon dari server
- Server memberikan respon dengan mengirimkan kode status, lalu menutup sambungan dengan klien.
Karena sambungan dengan klien ditutup setelah permintaan dan respon selesai diproses, server tidak akan menyimpan rekaman sambungan yang sudah terjadi. Dengan demikian, saat klien mengirimkan permintaan ulang, server akan memprosesnya seperti permintaan baru.
Cara Bikin HTTP Dengan Python
Setelah mengetahui pengertian, fungsi, dan cara kerjanya. Saatnya kamu belajar cara bikin HTTP. Dalam artikel ini, kamu akan menggunakan Python yang dapat membuat server sederhana secara cepat karena mempunyai modul bawaan yang dikenal dengan http.server. Adapun langkah-langkahnya adalah sebagai berikut:
Download Python
Pertama, kamu harus memasang Python terlebih dulu. Untuk memasangnya, kamu bisa download Python melalui website resminya di python.org/downloads/.
Buat web server sederhana
Setelah memasang Python, kamu bisa langsung membuat web server sederhana dengan menggunakan modul http.server. Berikut contoh pembuatan web server sederhana dengan menggunakan Python:
import http.server
import socketserver
port = 8080
handler = http.server.SimpleHTTPRequestHandler
with socketserver.TCPServer((””, port), handler) as httpd:
print(f”Server berjalan di port {port}”)
httpd.serve_forever()
Simpan kode tersebut ke dalam file Python, kemudian jalankan lewat terminal dengan kode berikut ini:
python namafile.
Misalnya, kamu menyimpan kode di atas dalam file yang bernama contohserver.py. Maka kode yang ditulis di terminalnya adalah:
python contohserver.py
Setelah menjalankan kode ini, kamu akan melihat hasil yang menunjukkan bahwa server sudah berjalan di port yang kamu tentukan. Pada tahap ini, kamu bisa membuka browser lalu ketikkan http://localhost:8080 di kolom URL untuk melihat server HTTP dan daftar file serta direktori di dalamnya.
Akses konten
Terakhir, akses konten yang ada tersimpan di dalam server milikmu. Caranya dengan mengetikkan http://localhost:8080/namafile pada kolom URL aplikasi browser milikmu. Bagian “namafile” bisa diubah tergantung nama file yang ada di servernya. Contoh, jika nama file-nya home.html, maka alamatnya jadi http://localhost:8080/home.html.
Cara Ganti HTTP Ke HTTPS
Sebelumnya sudah dijelaskan bahwa HTTPS kemanannya lebih unggul daripada HTTP. Karena itu, jika kamu ingin menyimpan data di internet, sebaiknya gunakan HTTPS. Misalnya, kamu mau menyimpan data-data website di hosting, domain website-mu harus diamankan dengan HTTPS agar datanya aman dari kejahatan siber.
Secara default domain website dibuat menggunakan HTTP. Untuk menggantinya jadi HTTPS, kamu bisa memanfaatkan htaccess, plugin, atau sertifikat SSL. Berikut ini langkah-langkah mengganti HTTP ke HTTPS dengan htaccess, plugin, dan sertifikat SSL:
Cara ganti HTTP ke HTTPS dengan .htaccess
Dalam sebuah website, ada satu file yang bernama .htaccess. File ini bisa kamu gunakan untuk banyak hal, mulai dari melindungi password, memblokir alamat IP, atau mengganti HTTP ke HTTPS. Cara ini digunakan oleh banyak pemilik website untuk mengganti HTTP ke HTTPS karena bisa diterapkan pada berbagai Content Management System.
Bagaimana caranya? Berikut langkah-langkah yang bisa kamu ikuti:
- Pertama, masuk ke akun cPanel hosting yang kamu gunakan kemudian klik menu File Manager di bagian Files.

- Setelah itu, buka folder public_html dan cari file .htaccess lalu buka file-nya dengan menekan klik kanan dan pilih opsi Edit Content atau Edit.

- Jika kamu tidak bisa menemukan file .htaccess di dalam folder public_html, silakan aktifkan fitur Show Hidden Files melalui menu Settings yang ada di sebelah kanan atas. Kemudian klik pada kotak Show Hidden Files (dotfiles).

- Setelah membuka file .htaccess, tuliskan script di bawah ini di baris paling atas:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
- Klik Save Changes.
- Buka tab baru, lalu buka alamat domain website-mu untuk memastikan HTTPS-nya sudah terpasang.
Cara ganti HTTP ke HTTPS dengan plugin WordPress

Jika kamu menggunakan WordPress, ada plugin khusus yang bisa membantumu mengganti HTTP ke HTTPS, yaitu Really Simple SSL. Cara menggunakannya adalah sebagai berikut:
- Pertama, login dulu ke dashboard WordPress milikmu lalu klik menu Plugins
- Klik pada tombol Add New, kemudian cari plugin really simple ssl melalui kolom pencarian
- Klik Install Now dan aktifkan plugin-nya
- Jika plugin sudah aktif, buka menu Setting dan pilih opsi SSL.
- Ubah setting dalam opsi SSL sesuai dengan kebutuhanmu
- Simpan setting-nya, lalu cek apakah HTTP di alamat website-mu sudah berganti ke HTTPS.
Cara ganti HTTP ke HTTPS dengan SSL
SSL merupakan sebuah sertifikat untuk mengamankan koneksi website yang bisa kamu pasang melalui cPanel. Berikut langkah-langkahnya:
- Login ke dashboard cPanel hosting yang kamu gunakan dan ketikkan Lets Encrypt di kolom pencarian dashboard cPanel.

- Buka menu Let’s Encrypt, lalu klik tombol +Issue yang ada pada bagian Issue a New Certificate

- Centang semua kolom yang ada di sebelah kiri alamat domain. Pilih opsi dns-01 pada bagian Please Choose an SSL validation method (all are automatic).

- Klik tombol Issue untuk memasang sertifikat SSL
- Selesai
Kepanjangan Dari HTTP Adalah
Melansir dari cloudflare.com, kepanjangan dari HTTP adalah Hypertext Transfer Protocol yang digunakan untuk memuat halaman website dengan link hypertext.
Penutup
Nah, itulah penjelasan tentang seluk beluk teknologi HTTP. Sekarang kamu tahu dong bahwa HTTP adalah bagian dari internet yang memiliki peran penting karena membantu kamu mengakses berbagai informasi dari website atau platform lainnya.
Selain itu, ada juga HTTPS yang merupakan versi terbaru dari HTTP dengan tingkat keamanan yang lebih tinggi. Mudah-mudahan informasi yang ada dalam artikel ini bisa membuat kamu lebih memahami teknologi lebih baik lagi, ya!
Referensi:
- https://blog.unmaha.ac.id/membuat-web-server-sederhana-dengan-http-server-di-python
- https://idwebhost.com/blog/cara-mengubah-url-http-ke-https
- https://www.cloudflare.com/en-gb/learning/ddos/glossary/hypertext-transfer-protocol-http/




