Panduan Lengkap untuk Memahami HTTP Status Codes yang Sering Muncul di Website
Technology21 Aug 20247 Minutes

Ketika kita mengakses sebuah website, browser kita sebenarnya mengirimkan permintaan ke server website tersebut. Server kemudian akan memproses permintaan ini dan mengirimkan respons kembali. Respons dari server ini biasanya disertai dengan kode khusus yang dikenal sebagai HTTP Status Code.

Kode status yang muncul akan memberikan informasi kepada pengguna dan pengembang tentang keberhasilan, kegagalan, atau masalah lainnya dalam interaksi dengan server. Oleh sebab itu, pengembang perlu memahami setiap kodenya untuk dapat mendiagnosis dan menangani berbagai masalah yang mungkin terjadi. Untuk lebih jelasnya, berikut penjelasan lengkap mengenai arti dari setiap  HTTP Status Code.

Daftar HTTP Status Code dan Artinya

1. Kode Error 100-an

HTTP Status Codes dalam kategori 100-an memberikan informasi penting bahwa permintaan dari browser masih dalam proses oleh server. Berikut penjelasan lengkapnya:

  • 100 – Continue: Server telah menerima permintaan "header" dari browser Anda dan siap untuk menerima permintaan "body." Hal ini membuat proses lebih efisien dengan mencegah browser mengirimkan "body" jika "header" ditolak.
  • 101 – Switching Protocols: Browser Anda telah meminta server untuk mengganti atau beralih protokol, dan server telah memenuhi permintaan tersebut.
  • 103 – Early Hints: Server mengirimkan "header" ke browser lebih awal, sebelum seluruh data dari server terbuka sepenuhnya.

2. Kode Error 200-an

HTTP Status Code dalam rentang 200-an menunjukkan bahwa permintaan yang diajukan oleh browser berhasil diterima, dipahami, dan diproses oleh server dengan baik. Artinya, semua proses berjalan sesuai dengan harapan tanpa ada masalah yang berarti.

  • 200 – Everything is OK: Halaman website atau data yang diminta telah berhasil ditampilkan oleh server tanpa ada hambatan.
  • 201 – Created: Server tidak hanya memproses permintaan tetapi juga berhasil membuat data baru sebagai hasil dari permintaan tersebut.
  • 202 – Accepted: Server sudah menerima permintaan dari browser, tetapi proses untuk mengeksekusi permintaan tersebut masih berlangsung.
  • 203 – Non-Authoritative Information: Server proxy menerima kode 200 dari server asli, namun sebelum respons diteruskan ke browser, hasilnya dimodifikasi oleh proxy.
  • 204 – No Content: Server telah memproses permintaan tetapi tidak ada konten yang perlu dikirimkan sebagai hasilnya. Kode ini sering muncul ketika Anda menghapus sebuah file atau data dari server.
  • 205 – Reset Content: Maknanya mirip dengan error 204, tetapi dengan tambahan instruksi bagi browser untuk mereset tampilan dokumen.
  • 206 – Partial Content: Muncul ketika browser menggunakan "range header," menyebabkan server hanya mengirimkan sebagian data yang diminta, bukan keseluruhan konten.

3. Kode Error 300-an

Kode-kode ini termasuk dalam kategori kode redirect, yang digunakan ketika data yang diminta telah dipindahkan ke lokasi baru. Redirect adalah proses di mana server mengarahkan permintaan dari lokasi lama ke lokasi baru, sehingga data yang diberikan kepada browser bukanlah data asli yang diminta, tetapi data yang sudah berada di lokasi baru.

Daftar HTTP Status Code di rentang 300-an adalah sebagai berikut:

  • 300 – Multiple Choices: Menunjukkan bahwa ada beberapa kemungkinan resource yang bisa diberikan oleh server untuk memenuhi permintaan browser, sehingga server mengharuskan browser memilih salah satu resource tersebut.
  • 301 – Moved Permanently: Resource yang diminta telah dipindahkan secara permanen ke lokasi baru. Ini adalah jenis redirect permanen, yang berarti bahwa setiap kali permintaan dibuat ke URL lama, server akan mengarahkan ke URL baru.
  • 302 – Found: Resource ditemukan, tetapi berada di lokasi yang berbeda dari yang diharapkan. Kode ini menandakan bahwa resource sementara berada di lokasi baru, tetapi server tidak menganggapnya sebagai lokasi permanen.
  • 303 – See Other: Resource yang diminta telah ditemukan, tetapi harus diakses melalui URL yang berbeda dengan menggunakan metode permintaan GET.
  • 304 – Not Modified: Resource yang disimpan dalam cache belum mengalami perubahan sejak terakhir kali diakses, sehingga tidak perlu mengunduh ulang data tersebut, mempercepat waktu muat halaman.
  • 307 – Temporary Redirect: Mirip dengan kode 302, tetapi memastikan bahwa metode permintaan HTTP tetap sama ketika browser mengarahkan ke URL baru.
  • 308 – Permanent Redirect: Resource telah dipindahkan secara permanen ke URL baru dengan metode HTTP yang sama, memastikan bahwa setiap permintaan di masa depan diarahkan ke lokasi baru tanpa perlu perubahan metode.

4. Kode Error 400-an

Di kategori ini, HTTP response codes mulai menjadi perhatian karena menunjukkan adanya kesalahan dari sisi web browser, baik karena masalah pada browser itu sendiri maupun pada permintaan yang dikirimkan.

  • 400 – Bad Request: Server tidak dapat memenuhi permintaan karena terdapat kesalahan pada browser Anda.
  • 401 – Unauthorized: Browser tidak dapat memberikan bukti otentikasi yang valid saat diminta oleh server.
  • 402 – Payment Required: Banyak platform menggunakan kode ini ketika pengguna tidak memenuhi jumlah pembayaran yang diperlukan.
  • 403 – Forbidden: Kode ini muncul ketika pengguna mencoba mengakses sesuatu yang tidak diizinkan, seperti konten yang terkunci tanpa login terlebih dahulu.
  • 404 – Not Found: Kode kesalahan tiga digit yang paling terkenal ini menunjukkan bahwa data yang diminta tidak ditemukan di server.
  • 405 – Method Not Allowed: Server telah menerima dan mengenali permintaan dari browser, tetapi menolak metode HTTP yang digunakan, sehingga halaman yang diminta tidak bisa ditampilkan.
  • 406 – Not Acceptable: Browser mengirimkan permintaan “accept header” yang tidak dapat dipenuhi oleh server.
  • 407 – Proxy Authentication Required: Menunjukkan bahwa proxy server sedang digunakan, dan server meminta browser Anda untuk memberikan otentikasi sebelum melanjutkan.
  • 408 – Request Timeout: Server kehabisan waktu (time out) karena menunggu browser menyelesaikan permintaannya, mungkin karena koneksi terputus sehingga server tidak menerima seluruh permintaan.
  • 409 – Conflict: Terjadi konflik antara data yang diminta dengan data yang tersedia, biasanya karena data tersebut sering diubah.
  • 410 – Gone: Mirip dengan error 404, namun kode ini menunjukkan bahwa data yang diminta memang tidak ada dan tidak akan pernah ada.
  • 411 – Length Required: Server membutuhkan panjang data tertentu yang gagal dipenuhi oleh browser.
  • 412 – Precondition Failed: Muncul ketika browser menyertakan beberapa syarat khusus dalam permintaannya yang tidak dapat dipenuhi oleh server.
  • 413 – Request Entity Too Large: Permintaan yang dikirim oleh browser terlalu besar untuk diproses oleh server.
  • 414 – URI Too Long: Kode ini terjadi ketika URL yang dikirim oleh browser terlalu panjang untuk diproses oleh server.
  • 415 – Unsupported Media Type: Muncul ketika browser meminta jenis media yang tidak didukung oleh server.
  • 416 – Range Not Satisfiable: Server tidak dapat memenuhi permintaan “range” dari browser.
  • 417 – Expectation Failed: Server tidak dapat memenuhi syarat khusus yang ada dalam “header” permintaan browser.
  • 418 – I’m a teapot: Kode ini adalah guyonan April Mop dari tahun 1988.
  • 422 – Unprocessable Entity: Terjadi karena kesalahan dalam bahasa permintaan yang dikirim oleh browser, sehingga server tidak dapat memprosesnya.
  • 425 – Too Early: Server menolak memproses permintaan karena mungkin dianggap sebagai pengulangan yang terlalu cepat.
  • 426 – Upgrade Required: Server menolak permintaan browser dan mengharuskan upgrade ke protokol yang berbeda.
  • 428 – Precondition Required: Kode ini muncul karena server membutuhkan syarat tertentu yang harus dipenuhi oleh browser terlebih dahulu.
  • 429 – Too Many Requests: Browser mengirim terlalu banyak permintaan dalam waktu singkat, biasanya karena bot atau script yang mencoba membajak website.
  • 431 – Request Header Fields Too Large: Error ini muncul karena field pada header terlalu besar untuk diproses oleh server.
  • 451 – Unavailable for Legal Reasons: Data yang diminta tidak tersedia karena masalah hukum.
  • 499 – Client Closed Request: Terjadi ketika browser tiba-tiba menghentikan permintaan yang sedang diproses oleh NGINX.

5. Kode Error 500-an

Terakhir, ada kategori 500-an menunjukkan adanya error di sisi server. Kode-kode error dalam kategori ini cenderung lebih sulit diperbaiki karena sumber masalahnya berada di server. Penjelasannya adalah sebagai berikut:

  • 500 – Internal Server Error: Ada kesalahan umum pada server yang membuat permintaan tidak dapat diselesaikan.
  • 501 – Not Implemented: Server tidak mendukung fungsi yang diminta oleh browser. Masalah ini hampir selalu disebabkan oleh kesalahan server dan harus diperbaiki oleh penyedia hosting.
  • 502 – Bad Gateway: Salah satu server menerima respons yang tidak valid dari server lain, seperti saat menggunakan proxy server.
  • 503 – Service Unavailable: Server tidak dapat memenuhi permintaan Anda saat ini, mungkin karena server sedang sibuk atau mengalami masalah lain.
  • 504 – Gateway Timeout Error 504 terjadi ketika server, yang berfungsi sebagai gateway, mengalami timeout saat menunggu respons dari server lain.
  • 505 – HTTP Version Not Supported: Server tidak mendukung versi HTTP yang digunakan oleh browser saat membuat permintaan.
  • 511 – Network Authentication Required: Menandakan bahwa jaringan yang digunakan memerlukan otentikasi sebelum dapat mengirimkan permintaan ke server.
  • 521 – Web Server Is Down: Muncul ketika browser berhasil terhubung ke Cloudflare, tetapi Cloudflare tidak dapat menyambungkan ke server pusat.

Demikian penjelasan lengkap mengenai Http Status Codes yang kerap muncul di website. Untuk mendapatkan informasi menarik lainnya seputar industri IT dan website, Anda bisa langsung mengecek informasi yang ada di @roketincom.