HTTP status codes adalah seperti catatan pendek dari server yang melekat pada sebuah halaman web. HTTP status codes sebenarnya bukan bagian dari konten halaman itu sendiri. Melainkan, HTTP status codes memberikan pesan kepada server untuk memberitahu pada pengguna bagaimana keadaan halaman tersebut saat menerima permintaan untuk melihat suatu halaman tertentu.
Pesan serupa ini selalu bermunculan setiap kali situs web berinteraksi dengan server, walaupun kamu tidak melihatnya. Jika kamu adalah pemilik situs web ataupun seorang developer, memahami HTTP status codes merupakan hal yang sangat penting. Karena ketika pesan seperti ini muncul, HTTP status codes adalah alat yang sangat berharga untuk memeriksa dan memperbaiki konfigurasi situs web yang error.
Pada artikel kali ini, akan mengenalkan beberapa status server dan eror codes, serta menjelaskan apa saja yang terjadi dibalik server yang tengah bekerja. Mari kita mulai!
Daftar Isi
Apa itu HTTP Status Codes?
Setiap kali kamu mengklik suatu link atau mengetik URL dan menekan Enter, mesin pencari akan mengirim dan memproses permintaan pada server web di suatu halaman yang tengah diakses. Sedangkan server akan menerima dan memproses permintaan tersebut, dan kemudian mengirimkan kembali sumber yang relevan dengan header HTTP.
HTTP status codes akan dikirim pada mesin pencarian dalam header HTTP. Ketika status codes dikembalikan tiap kali browser mencoba mengirim permintaan pada suatu halaman web, acapkali kamu tidak akan melihatnya.
Namun biasanya ketika suatu masalah terjadi, kamu akan melihat HTTP status codes ditampilkan pada layar browser. Ini adalah cara server untuk berkata: “Suatu kesalahan terjadi. Ini adalah code yang akan menjelaskan apa yang salah pada server tersebut.”
Jenis Kelas HTTP Status Codes
HTTP status codes dibagi ke dalam lima kelas. Ini adalah metode pengelompokan pada respon yang memiliki arti yang sama. Dengan mengetahui apa saja status codes tersebut, tentu akan membantumu dengan cepat untuk memutuskan metode perbaikannya.
Berikut adalah lima kelas pada HTTP status code:
- 100an:Kode informasi yang menunjukkan bahwa permintaan dari browser tersebut tengah berjalan.
- 200an: Kode sukses yang dikembalikan ketika permintaan browser diterima, dipahami, dan diproses oleh server.
- 300an: Kode pengalihan dikembalikan ketika sumber baru telah diganti untuk sumber yang diminta.
- 400an: Kode client eror mengindikasikan terdapat kendala pada permintaan.
- 500an: Kode kesalahan server menunjukkan bahwa permintaan diterima, tetapi terdapat suatu eror pada server yang mencegah pemenuhan permintaan.
Pada setiap jenis kelas tersebut, terdapat berbagai kode server yang mungkin akan dikembalikan oleh server. Tiap kode tersebut memiliki arti spesifik tersendiri, yang selanjutnya akan kita bahas di bawah.
Daftar Lengkap HTTP Status Codes
Berikut adalah beberapa daftar HTTP status codes yang kerap dialami oleh kebanyakan pengguna browser, di antaranya adalah:
1. 100 Status Codes
Level 100 status code memberi tanda bahwa permintaan pada server masih dalam proses. Sebenarnya ini bukanlah masalah, kode tersebut hanya memberikan informasi pada pengguna terkait apa yang sedang terjadi pada browser yang dijalankan.
- 100: Continue
Kode ini artinya mengindikasikan bahwa server telah menerima permintaan header browser dan sekarang telah siap untuk dikirim juga. Ini membuat proses permintaan menjadi lebih efisien karena mencegah browser dari mengirimkan permintaan halaman walaupun header telah ditolak.
- 101: Switching Protocols
Browser pengguna meminta server untuk mengganti protokol dan server tersebut memenuhinya.
- 103: Early Hints
Kode 103 menunjukkan pengembalian respon header sebelum respon server sepenuhnya siap.
2. 200 Status Codes
Kode ini merupakan salah satu kode yang kerap diterima oleh pengguna. Respons ini menunjukkan jika browser berjalan dengan semestinya.
- 200: Everything is OK
Kode ini akan dikirimkan ketika sebuah halaman web atau sumber bekerja dengan semestinya.
- 201: Created
Server telah memenuhi permintaan browser dan sebagai hasilnya, browser membuat sumber terbaru.
- 202: Accepted
Server telah menerima permintaan browser dan masih memprosesnya. Namun, permintaan tersebut pada akhirnya bisa saja tidak menghasilkan respon yang sempurna.
- 203: Non-Authoritative Information
Kode status ini akan hadir ketika proxy digunakan. Itu berarti server proxy menerima kode 200 “Everything is OK” dari original server, tetapi telah memodifikasi respon sebelum mengirimkannya pada browser pengguna.
- 204: No Content
Kode ini menunjukkan jika server telah sukses memproses permintaan, tetapi tidak akan mengembalikan konten apapun.
- 205: Reset Content
Seperti kode 204, kode ini mengartikan bahwa server telah memproses permintaan tetapi tidak akan mengembalikan konten apapun. Selain itu, kode 205 juga mengharuskan browser dari pengguna untuk mengatur ulang tampilan dokumen.
- 206: Partial Content
Kamu mungkin akan melihat kode ini jika browser menggunakan range headers. Ini memungkinkan browser melanjutkan unduhan yang dijeda, serta membagi unduhan menjadi beberapa bagian. Kode 206 dikirim ketika range header menyebabkan server mengirim hanya sebagian dari sumber daya yang diminta.
3. 300 Status Codes
Redirection atau pengalihan adalah proses digunakan untuk mengomunikasikan bahwa suatu sumber atau laman telah dipindahkan pada lokasi berbeda. Terdapat beberapa HTTP status codes pada pengalihan ini, untuk memberikan informasi kepada pengunjung terkait di mana mereka bisa menemukan apa yang dicari.
- 300: Multiple Choices
Terkadang, mungkin ada beberapa kemungkinan sumber daya yang dapat direspon oleh server untuk memenuhi permintaan browser. Kode status 300 berarti browser tersebut harus memilih di antara keduanya. Ini dapat terjadi ketika terdapat beberapa ekstensi jenis file yang tersedia, atau jika server mengalami ketidakjelasan pengertian kata.
- 301: The requested resource has been moved permanently
Kode ini dikirimkan ketika halaman web atau sumber telah dipindahkan secara permanen pada sumber yang berbeda. Sehingga, kode tersebut digunakan untuk pengalihan URL permanen.
- 302: The requested resource has moved, but was found
Kode tersebut mengindikasikan bahwa permintaan pada sumber ditemukan, tetapi tidak pada lokasi yang seharusnya. Kode 302 biasanya digunakan untuk pengalihan URL sementara.
- 303: See Other
Untuk memahami 303 status code, kamu harus mengetahui terlebih dahulu perbedaan antara empat dasar metode permintaan HTTP. Pada dasarnya, kode 303 memberikan informasi pada browser bahwa mereka menemukan sumber yang diminta via POST, PUT, atau DELETE. Namun, untuk mendapatkannya menggunakan GET, kamu harus membuat permintaan yang benar untuk URL berbeda dari yang sebelumnya digunakan.
- 304: The requested resource has not been modified since the last time you accessed it
Kode ini memberikan informasi pada browser bahwa penyimpanan sumber yang ada di cache browser belum berubah. Ini digunakan untuk mempercepat proses pengiriman halaman web dengan kembali menggunakan sumber yang diunduh sebelumnya.
- 307: Temporary Redirect
Kode status ini menggantikan kode 302 ‘Found’ sebagai tindakan ketika sumber kini tengah dipindahkan sementara pada URL berbeda. Tidak seperti kode status 302, kode ini tidak mengizinkan mengubah metode HTTP.
- 308: Permanent Redirect
Kode status 308 merupakan penerus dari kode 301 ‘Moved Permanently’. Mereka tidak mengizinkan untuk mengubah metode HTTP dan mengindikasikan permintaan pada sumber kini sudah dipindahkan secara permanen pada URL baru.
4. 404 Status Codes
Pada level 400, HTTP Status Codes ini mulai sedikit memberikan informasi terkait kesalahan yang terjadi. Ini merupakan kode eror yang mengindikasikan bahwa terjadi kesalahan ataupun permintaan pada browser.
- 400: Bad Request
Server tidak dapat mengembalikan respon yang disebabkan oleh kesalahan pada browser pengguna
- 401: Unauthorized atau Authorization Required
Kode ini dikembalikan oleh server ketika sumber target kekurangan autentikasi yang kredensial.
- 402: Payment Required
Awalnya, kode ini digunakan sebagai bagian dari sistem pembayaran digital. Namun, hal itu tidak berjalan dengan seharusnya. Pada akhirnya, kode ini digunakan oleh berbagai platform untuk mengindikasikan bahwa permintaan tersebut tidak dapat dipenuhi, yang biasanya dikarenakan kekurangan biaya. Berikut adalah contoh saat kode ini muncul pada browser pengguna:
a. Pengguna telah mencapai batasan permintaan harian pada Google Developers API.
b. Pengguna belum membayar biaya Shopify dan toko online tersebut pada akhirnya di deaktivasi sementara.
- 403: Access to that resource is forbidden
Kode ini dikembalikan ketika pengguna mencoba mengakses sesuatu yang mereka tidak memiliki izin untuk melihatnya. Misalkan, saat pengguna mencoba menjangkau konten yang dilindungi kata sandi tanpa login secara benar. Server kemudian akan mengirimkan kode eror 403.
- 404: The requested resource was not found
Ini adalah pesan kesalahan paling umum yang kerap ditemukan oleh pengguna. Kode ini berarti bahwa sumber daya yang diminta tidak ditemukan, dan server tidak tahu apakah sumber tersebut pernah ada.
- 405: Method not allowed.
Ini dibuat ketika server hosting (server asal) mendukung metode yang diterima, tetapi sumber target tidak.
- 406: Not acceptable response
Sumber yang diminta hanya mampu menghasilkan konten yang tidak dapat diterima menurut header yang dikirim dalam permintaan.
- 408: The server timed out waiting for the rest of the request from the browser
Kode ini muncul ketika server kehabisan waktu ketika menunggu permintaan lengkap dari browser. Dengan kata lain, server tidak menerima permintaan lengkap yang dikirimkan oleh browser. Salah satu kemungkinan penyebabnya adalah kemacetan jaringan yang mengakibatkan hilangnya paket data antara browser dan server.
- 409: Conflict
Kode status 409 berarti bahwa server tidak dapat memproses permintaan browser karena terdapat permasalahan dengan sumber yang dituju. Kode ini juga terkadang muncul karena penyuntingan dilakukan secara bersamaan.
- 410: The requested resource is gone and won’t be coming back
Kode ini mirip dengan kode 404 ‘Not Found’. Namun kode status 410 ini menunjukkan bahwa kondisi tersebut permanen.
- 411: Length Required
Kode respon ini mengindikasikan bahwa server menolak untuk menerima permintaan tanpa header Content-Length yang ditentukan. Ini berarti sumber yang diminta mengharuskan klien menentukan Content-Length tertentu untuk bisa mengaksesnya.
- 412: Precondition Failed
Kode ini muncul saat browser pengguna menyertakan kondisi tertentu dalam header permintaannya, dan server tidak memenuhi spesifikasi tersebut.
- 413: Payload Too Large
Kode status ini menunjukkan jika permintaan browser lebih besar daripada yang semestinya bisa diproses oleh server.
- 414: URL Too Long
Kode 414 muncul sebagai hasil dari permintaan GET yang telah dikodekan sebagai kueri yang terlalu besar untuk diproses oleh server.
- 415: Unsupported Media Type
Permintaan yang dikirimkan tersebut menyertakan jenis media yang tidak didukung oleh server atau sumber.
- 416: Range Not Satisfiable
Kode status 416 menunjukkan bahwa server tidak dapat memenuhi permintaan. Misalnya, pengguna meminta sebuah dokumen sebesar 800-900 bytes, tetapi ternyata dokumen tersebut hanya sepanjang 200 bytes.
- 417: Expectation Failed
Server tidak dapat memenuhi persyaratan yang ditentukan pada header dari permintaan.
- 418: I’m a teapot
Kode unik ini digambarkan oleh sebuah teko yang menerima permintaan untuk menyeduh kopi. HTTP Status Codes satu ini mengindikasikan bahwa server menolak untuk memproses permintaan.
- 422: Unprocessable Entity
Permintaan pengguna mengandung kesalahan semantik dan server tidak dapat memprosesnya.
- 425: Too Early
Kode ini dikirim ketika server tidak mau memproses permintaan karena mungkin pengguna memuat ulang halaman yang dituju.
- 426: Upgrade Required
Kode respon kesalahan klien HTTP Status Codes menunjukkan bahwa server menolak untuk melakukan permintaan menggunakan protokol pengguna saat ini, tetapi mungkin bersedia melakukannya setelah pengguna meningkatkan ke protokol yang berbeda.
- 428: Precondition Required
Menunjukkan jika server memerlukan syarat atau kondisi yang lebih spesifik sebelum memproses permintaan.
- 429: Too many requests
Kode tersebut dihasilkan oleh server ketika pengguna telah mengirimkan terlalu banyak permintaan dalam kurun waktu tertentu. Ini terkadang dapat terjadi karena bot atau skrip mencoba mengakses situs tersebut.
- 431: Request Header Fields Too Large
Server tidak dapat memproses permintaan karena bidang header terlalu besar. Ini mungkin menunjukkan terdapat masalah pada beberapa atau semua header yang ada di halaman atau website yang dituju.
- 451: Unavailable for Legal Reasons
Operator server telah menerima permintaan untuk melarang akses ke sumber daya yang diminta oleh pengguna.
- 499: Client closed request
Kode ini dikembalikan oleh NGINX ketika pengguna menutup permintaan saat NGINX sedang memprosesnya.
5. 500 Status Codes
Kode status 500 level juga merupakan kode yang menunjukkan suatu kesalahan. Namun, kode ini menunjukkan bahwa masalah terdapat di belakang server. Ini bisa membuat mereka lebih sulit untuk diselesaikan.
- 500: There was an error on the server and the request could not be completed
Ini adalah kode umum yang menunjukkan kesalahan server internal. Terdapat kesalahan pada server dan sumber daya yang diminta tidak terkirim. Kode ini biasanya dibuat oleh plugin pihak ketiga, PHP yang salah, atau bahkan koneksi ke database yang rusak.
- 501: Not Implemented
Kode tersebut mengindikasikan bahwa server tidak mendukung fungsionalitas yang diperlukan untuk memenuhi permintaan tersebut. Ini hampir selalu menjadi masalah di server web itu sendiri dan biasanya harus diselesaikan oleh pemilik situs web.
- 502: Bad Gateway
Kode ini biasanya berarti bahwa satu server telah menerima respon yang tidak valid dari yang lain, seperti saat server proxy sedang digunakan. Kode ini juga terkadang muncul saat kueri atau permintaan akan menghabiskan waktu terlalu lama, sehingga dibatalkan atau dimatikan oleh server dan koneksi ke database pun terputus.
- 503: The server is unavailable to handle this request right now
Mengindikasikan jika permintaan tidak dapat diselesaikan saat ini. Kode ini mungkin dikembalikan oleh server yang kelebihan beban dan tidak dapat menangani permintaan tambahan.
- 504: The server, acting as a gateway, timed out waiting for another server to respond
Ini adalah jenis kode yang dikembalikan ketika terdapat dua server yang terlibat dalam pemrosesan permintaan, dan server pertama kehabisan waktu saat menunggu server kedua untuk merespon.
- 505: HTTP Version Not Supported
Server tidak mendukung versi HTTP yang digunakan oleh pengguna untuk membuat permintaan.
- 511: Network Authentication Required
Kode status ini dikirim saat jaringan yang digunakan oleh pengguna memerlukan beberapa bentuk autentikasi sebelum mengirimkan permintaan pengguna ke server. Misalnya, saat kamu perlu menyetujui syarat dan ketentuan hotspot Wi-Fi publik.
- 521: Web server is down
Kode eror 521 adalah informasi kesalahan khusus Cloudflare. Ini berarti browser web pengguna berhasil terhubung ke Cloudflare, tetapi Cloudflare tidak dapat terhubung ke server web asal.
- 525: SSL Handshake Failed
HTTP Status Codes 525 mengindikasikan handshake SSL antara domain yang menggunakan Cloudflare dan server web asal gagal.
Kesimpulan
Meskipun terlihat membingungkan dan mengintimidasi, HTTP Status Codes sebenarnya sangat informatif, lho! Nah, dengan mengetahui jenis-jenis kode tersebut, dapat membantu kamu dalam menyelesaikan kendala yang dihadapi saat berselancar di mesin pencarian. Memahami kode respon ini sangat penting untuk memelihara situs web karena berkaitan juga dengan search engine optimization.
Memiliki website yang andal jelas impian banyak orang, salah satunya adalah kamu. Jika kamu menginginkan hosting terpercaya dan terbaik, kamu pasti akan menyukai platform hosting Exabytes. WordPress hosting untuk situs web kamu dengan dukungan 24/7 dari tim ahli profesional. Infrastruktur mumpuni dan berfokus pada kinerja serta keamanan terbaik. Yuk, mulai sekarang!