
GudPeople pasti pernah sesekali memandang pesan seperti “404 Not Found” alias “500 Internal Server Error” saat menjelajah internet, kan?
Nah, nomor 404 alias 500 tersebut adalah contoh dari HTTP Status Code.
Apa nan Dimaksud dengan HTTP Status Code?
HTTP Status Code adalah kode tiga digit nan dikirim oleh server website sebagai jawaban atas permintaan nan dikirim oleh browser.
Ketika browser meminta untuk memandang suatu laman web, server bakal menjawab dengan kode status ini untuk menunjukkan hasil permintaan tersebut.
Apakah berhasil? Gagal? Atau perlu dialihkan ke tempat lain?
Setiap kode status ini mempunyai makna khusus.
Digit pertama dari kode tersebut menunjukkan kategori responnya:
- 1xx (Informasi): Permintaan sudah diterima dan proses sedang dilanjutkan. Kode ini jarang ditampilkan langsung ke penggunar.
- 2xx (Sukses): Permintaan sukses diterima, dipahami, dan diproses oleh server. Kode paling terkenal di kelas ini adalah 200 OK.
- 3xx (Pengalihan/Redirection): Perlu ada tindakan tambahan nan dilakukan oleh browser untuk menyelesaikan permintaan, biasanya berupa pengalihan otomatis ke URL lain. Contohnya 301 Moved Permanently.
- 4xx (Kesalahan Klien/Client Error): Terjadi kesalahan pada permintaan nan dikirim oleh browser. Bisa jadi lantaran URL salah ketik, laman tidak ada, alias tidak punya izin akses. Contoh populer: 404 Not Found, 403 Forbidden.
- 5xx (Kesalahan Server/Server Error): Server kandas memenuhi permintaan nan sebenarnya sah lantaran terjadi masalah di sisi server itu sendiri. Contoh umum: 500 Internal Server Error, 503 Service Unavailable.
Daftar HTTP Status Code, Penyebab, dan Solusinya!
Ada banyak sekali kode status HTTP, tapi Anda tidak kudu menghafal semuanya.
Berikut beberapa kode nan paling sering muncul dan krusial untuk Anda kenali, baik sebagai pengguna internet biasa maupun sebagai pengelola website.
1. Kode 2xx: Sukses
Kode dalam rentang ini menandakan permintaan dari browser Anda sukses diterima dan diproses oleh server.
Misal, 200 OK.
Artinya, laman alias file nan Anda minta sukses ditemukan dan dikirimkan oleh server.
Kode ini menunjukkan tidak ada masalah, jadi tidak ada nan perlu diperbaiki.
2. Kode 3xx: Pengalihan (Redirection)
Kode ini menunjukkan browser bahwa letak sumber daya nan diminta sudah berpindah, dan browser perlu melakukan langkah tambahan untuk mengaksesnya.
Misal, 301 Moved Permanently.
Artinya, laman nan Anda tuju telah dipindahkan secara permanen ke URL baru.
Penyebabnya, pemilik website mengubah struktur URL, memindahkan konten ke domain baru, alias migrasi dari HTTP ke HTTPS.
Bagi pemilik website, pastikan redirect 301 sudah diatur dengan betul di server agar visitor dan mesin pencari otomatis diarahkan ke URL baru.
Selanjutnya, ada 302 Found (atau Moved Temporarily).
Artinya, laman dipindahkan untuk sementara waktu ke URL lain.
Penyebabnya, untuk keperluan maintenance, A/B testing, alias promosi laman tertentu dalam waktu singkat.
Gunakan 302 Found hanya jika pemindahan betul-betul berkarakter sementara. Jika permanen, selalu gunakan 301.
3. Kode 4xx: Client Error
Kode ini mengindikasikan ada masalah pada permintaan nan dikirim oleh sisi browser.
Server tidak bisa memprosesnya lantaran kesalahan dari sisi pengirim permintaan.
Ada beberapa kode 4xx nan terkenal digunakan. Mari kita telaah satu per satu.
400 Bad Request
Artinya, server tidak bisa memahami permintaanmu lantaran formatnya salah alias tidak valid.
Penyebabnya berasal dari sisi pengguna, ialah kesalahan pengetikan URL, cookie browser korup, cache bermasalah, alias ukuran file upload terlalu besar.
Solusinya, cek ulang penulisan URL, coba bersihkan cache dan cookie browser, lampau coba lagi.
Jika sedang upload, pastikan ukuran file tidak melampaui batas.
Artinya, Anda mencoba mengakses laman nan memerlukan login (autentikasi), tapi Anda belum login alias info login nan Anda berikan salah.
Solusinya, masukkan username dan password nan benar.
Jika lupa, gunakan fitur “lupa password“. Pastikan cookies diaktifkan di browser.
403 Forbidden
Artinya, Anda tidak mempunyai izin untuk mengakses laman ini. Server mengerti permintaanmu, tapi menolak untuk memenuhinya.
Penyebabnya bisa dari sisi pengguna alias pemilik website.
Dari sisi pengguna, ialah mencoba masuk ke area terlarang alias direktori nan dilindungi.
Sementara dari sisi pemilik website, ialah pengaturan kewenangan akses (permission) file alias direktori di server salah, alias konfigurasi keamanan melarang akses.
Bagi pemilik website, solusinya adalah memeriksa permission file/folder, atur ke 755 untuk berkas dan 644 untuk file.
Kemudian, cek patokan di file .htaccess, dan periksa log firewall alias plugin keamanan.
Sementara bagi pengguna, tidak ada nan bisa dilakukan selain menghubungi pemilik website jika Anda percaya semestinya mempunyai akses.
404 Not Found
Artinya, server tidak dapat menemukan aset (halaman, gambar, file) nan Anda minta di URL tersebut.
Penyebabnya bisa salah ketik URL, mengklik link nan sudah rusak, alias laman memang sudah dihapus oleh pemilik website.
Coba periksa kembali penulisan URL dengan teliti. Gunakan fitur pencarian di website tersebut alias kembali ke laman utama.
Sementara bagi pemilik website, segera perbaiki broken link internal.
Jika laman sengaja dihapus, buat redirect 301 ke laman relevan lainnya alias buat laman 404 kustom nan informatif dan membantu pengguna menemukan apa nan mereka cari.
4. Kode 5xx: Server Error
Kode ini menunjukkan server mengalami masalah internal sehingga tidak dapat memenuhi permintaan nan sebenarnya sah dari browser.
Masalah ada di sisi server.
500 Internal Server Error
Artinya, terjadi kesalahan umum nan tidak spesifik di sisi server.
Server tidak tahu persis apa nan salah, tapi ada sesuatu nan menghalanginya memproses permintaan.
Penyebabnya sangat beragam. Bisa lantaran error pada script, kesalahan konfigurasi file .htaccess, pemisah memori terlampaui, plugin alias tema bermasalah, alias permission file/folder nan salah.
Solusinya adalah memeriksa error log server.
Coba juga nonaktifkan plugin alias tukar tema ke default, periksa file .htaccess, naikkan pemisah memori PHP, alias cek permission.
Jika buntu, hubungi penyedia hosting.
502 Bad Gateway
Artinya, server nan berkedudukan sebagai perantara menerima respons tidak sah dari server utama nan semestinya melayani permintaan.
Penyebabnya, server utama sedang down, overload, alias tidak dapat dijangkau; masalah jaringan antara proxy dan server utama; konfigurasi firewall alias proxy salah.
Kode ini sering terlihat pada arsitektur website nan menggunakan reverse proxy, CDN, alias load balancer.
Solusinya, pastikan server utama melangkah normal, periksa log proxy/gateway, verifikasi konektivitas jaringan antar server, tinjau konfigurasi firewall.
Hubungi penyedia hosting alias CDN jika perlu.
Artinya, server saat ini tidak tersedia untuk menangani permintaan.
Penyebabnya bisa lantaran lonjakan trafik nan sangat tinggi melampaui kapabilitas server, server sedang dalam proses maintenance, sumber daya server (CPU, RAM) habis, script alias proses di server menyantap terlalu banyak sumber daya.
Jika lantaran trafik, pertimbangkan optimasi website alias upgrade paket hosting.
Jika maintenance, pastikan ada pemberitahuan alias lakukan di jam sepi. Identifikasi dan optimalkan script nan berat.
504 Gateway Timeout
Artinya, server perantara tidak mendapatkan respons dari server utama dalam pemisah waktu nan ditentukan.
Mirip 502, tapi konsentrasi pada masalah waktu respons.
Penyebabnya antara lain server utama terlalu lama memproses permintaan, masalah konektivitas jaringan nan menyebabkan keterlambatan, dan pemisah waktu pada proxy terlalu pendek.
Solusinya, optimalkan keahlian script dan database di server utama, periksa latensi jaringan, alias sesuaikan pengaturan timeout pada proxy.
Apa Dampak HTTP Status Code terhadap Keamanan Website?
Mungkin GudPeople bertanya-tanya, apakah kode-kode status HTTP ini punya pengaruh langsung ke keamanan website?
Jawabannya sedikit kompleks.
Kode status itu sendiri sebenarnya adalah bagian dari protokol komunikasi standar dan berkarakter netral.
Kode 404 alias 500 bukanlah celah keamanan (vulnerability) secara langsung.
Namun, pola kemunculan kode status tertentu alias gimana server menghasilkan kode status tersebut bisa menjadi parameter adanya aktivitas mencurigakan.
1. Kode 4xx Sebagai Indikator Pemindaian alias Percobaan Akses
Jika log servermu mencatat lonjakan permintaan nan menghasilkan kode 401 alias 403 ke laman login alias direktori admin, bisa jadi ada upaya serangan brute force alias percobaan akses ilegal.
Begitu pula serangkaian permintaan 404 nan menargetkan URL-URL spesifik nan tidak ada.
Bisa jadi tanda adanya bot alias peretas nan sedang melakukan pemindaian (reconnaissance) untuk mencari celah keamanan di websitemu.
2. Kode 5xx Dapat Mengekspos Informasi
Bahaya utama kode 500 dari sisi keamanan adalah andaikan pesan error detailnya ditampilkan langsung ke browser pengguna.
Pesan error ini bisa membocorkan info sensitif, seperti path file di server, nama database, query SQL, alias jenis software, nan sangat berfaedah bagi penyerang.
Selain itu, serangan Denial-of-Service (DoS) alias DDoS nan sukses juga bakal sering mengakibatkan munculnya kode 503 lantaran server tidak sanggup lagi merespons.
Sebab itu, lonjakan kode 503 nan tidak wajar patut dicurigai.
3. Kode 3xx Bisa Disalahgunakan
Kalau website Anda membikin pengalihan berasas input dari URL, misalnya …/redirect?to=URL_TUJUAN, tanpa memvalidasi URL tujuan dengan benar, peretas bisa membikin link palsu.
Link ini terlihat kondusif lantaran domainnya adalah domainmu, tapi saat diklik, pengguna bakal diarahkan ke situs phishing alias malware milik peretas.
Ini dikenal sebagai Open Redirect Vulnerability.
Kesimpulan
Kini GudPeople tahu bahwa HTTP Status Code bukan sekadar nomor error acak, melainkan pesan komunikasi dari server tentang status permintaan websitemu.
Mengenali makna kode-kode umum ini beserta penyebabnya bakal sangat membantumu dalam mendiagnosis dan mengatasi masalah website.
Jangan lupakan juga memantau pola kode status ini bisa memberikan petunjuk awal mengenai potensi rumor keamanan.
Yuk, manfaatkan pengetahuan tentang kode status ini untuk menjaga websitemu tetap aman!
1 tahun yang lalu
English (US) ·
Indonesian (ID) ·