Cara Mengatasi Kesalahan 429 Terlalu Banyak Permintaan
Kesalahan 429 Terlalu Banyak Permintaan adalah kode status HTTP yang mengindikasikan bahwa pengguna telah mengirim terlalu banyak permintaan dalam jangka waktu tertentu. Kode ini berfungsi sebagai mekanisme pembatas kecepatan untuk melindungi server agar tidak kewalahan dengan permintaan yang berlebihan, baik karena skrip yang salah konfigurasi, perayap, atau serangan brute force. Mengatasi kesalahan ini sangat penting untuk memastikan bahwa pengguna yang sah dapat mengakses situs web Anda tanpa gangguan.
Panduan ini akan memandu Anda untuk mengetahui penyebab error 429 dan solusi langkah demi langkah untuk mengatasinya.
Apa yang Menyebabkan Error 429 Terlalu Banyak Permintaan?
Kesalahan 429 Terlalu Banyak Permintaan biasanya disebabkan oleh:
- Pembatasan Kecepatan: Server atau firewall aplikasi (seperti Cloudflare, Sucuri, atau plugin) membatasi jumlah permintaan yang diizinkan dari pengguna, alamat IP, atau browser tertentu.
- Bot dan Perayap: Bot atau perayap dapat mengirimkan banyak permintaan ke situs web, menyebabkan server memicu pembatasan kecepatan.
- Plugin atau Skrip yang Salah Konfigurasi: Plugin, permintaan API, atau skrip WordPress tertentu dapat secara tidak sengaja mengirimkan terlalu banyak permintaan ke server, yang menyebabkan error.
- Serangan Brute Force: Upaya login berulang kali atau ancaman keamanan seperti serangan brute force dapat memicu pembatasan kecepatan pada halaman login.
Cara Memperbaiki Kesalahan 429 Terlalu Banyak Permintaan: Solusi Langkah-demi-Langkah
Langkah 1: Identifikasi Sumber Permintaan yang Berlebihan
Untuk mengatasi kesalahan 429, pertama-tama Anda perlu mengidentifikasi apa yang menyebabkan permintaan berlebihan:
- Periksa Log Server: Log server dapat memberikan informasi tentang alamat IP atau pengguna mana yang mengirimkan terlalu banyak permintaan.
- Akses log Anda menggunakan cPanel, SSH, atau FTP.
- Cari alamat IP atau skrip yang sering membuat permintaan.
- Gunakan Plugin Keamanan: Jika Anda menggunakan WordPress, pengaya seperti Wordfence atau iThemes Security dapat membantu Anda memantau dan memblokir aktivitas yang mencurigakan.
Langkah 2: Tingkatkan Batas Kecepatan pada Server Anda
Jika Anda mengalami kesalahan 429 karena lalu lintas yang sah melebihi batas kecepatan server, Anda mungkin perlu meningkatkan batas kecepatan pada server Anda.
- Sesuaikan Batas Laju di .htaccess (Untuk Server Apache):
- Akses berkas .htaccess Anda melalui FTP atau cPanel.
- Tambahkan kode berikut ini untuk mengizinkan lebih banyak permintaan:RewriteEngine On RewriteCond %{REQUEST_METHOD} ^(POST|GET) RewriteCond %{REQUEST_URI} ^/your-page-url/ RewriteCond %{REMOTE_ADDR} ^(.*)$ RewriteRule .* – [F,L]
- Contoh ini membatasi laju permintaan ke halaman tertentu. Sesuaikan kondisi seperlunya untuk kebutuhan Anda.
- Server Nginx:
- Akses berkas nginx.conf Anda dan sesuaikan pengaturan pembatas kecepatan:http { limit_req_zone $binary_remote_addr zone = one:10m rate = 10r/s; server { location / { limit_req zone = one burst = 20 nodelay; } } }
- Konfigurasi ini memungkinkan 10 permintaan per detik dan ledakan 20 permintaan tanpa penundaan. Sesuaikan nilai sesuai kebutuhan.
- Akses berkas nginx.conf Anda dan sesuaikan pengaturan pembatas kecepatan:
Langkah 3: Nonaktifkan Plugin (WordPress) untuk sementara waktu
Di WordPress, plugin terkadang dapat menjadi penyebab error 429 karena permintaan API atau pengaturan pembatasan kecepatan:
- Masuk ke dasbor WordPress Anda.
- Buka Plugin > Plugin Terpasang.
- Nonaktifkan plugin yang mungkin berinteraksi dengan API eksternal, seperti plugin SEO, plugin cache, atau plugin keamanan.
- Periksa situs web Anda untuk melihat apakah kesalahan masih berlanjut.
- Aktifkan kembali plugin satu per satu untuk mengidentifikasi plugin mana yang menyebabkan masalah.
Tips: Selalu perbarui plugin Anda untuk menghindari masalah kompatibilitas yang dapat menyebabkan error.
Langkah 4: Sesuaikan Batas Permintaan API
Jika Anda bekerja dengan API (seperti API pihak ketiga atau skrip kustom), pastikan bahwa permintaan Anda tidak melebihi batas kecepatan yang ditetapkan oleh penyedia API:
- Periksa Dokumentasi API: Lihat batas kecepatan di dokumentasi API dan sesuaikan skrip Anda untuk menghormati batas tersebut.
- Membatasi Permintaan API: Gunakan pelambatan atau pembatasan laju dalam permintaan API Anda untuk mencegah panggilan yang berlebihan. Misalnya, jika menggunakan JavaScript, Anda dapat mengimplementasikan pelambatan dengan pustaka seperti lodash:.throttle(() => { // Panggilan API Anda di sini }, 2000);
- Contoh ini mengirimkan permintaan API setiap 2 detik.
Langkah 5: Blokir atau Batasi Bot dan Perayap
Bot dan perayap dapat menyebabkan permintaan yang berlebihan, yang menyebabkan kesalahan 429:
- Blokir Bot yang Tidak Diinginkan di .htaccess:
- Tambahkan kode berikut ini ke .htaccess untuk memblokir bot jahat yang diketahui:RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^.* (BadBot|AnotherBadBot).*$ [NC] RewriteRule .* – [F,L]
- Ganti BadBot dan AnotherBadBot dengan nama bot yang ingin Anda blokir.
- Tambahkan kode berikut ini ke .htaccess untuk memblokir bot jahat yang diketahui:
- Gunakan Firewall Aplikasi Web (WAF):
- Gunakan layanan seperti Cloudflare, Sucuri, atau Wordfence (untuk WordPress) untuk memblokir bot jahat dan mengontrol lalu lintas ke situs Anda.
- Alat-alat ini dapat secara otomatis mendeteksi dan memblokir IP mencurigakan yang menghasilkan permintaan berlebihan.
Langkah 6: Hubungi Penyedia Hosting Anda
Jika Anda tidak dapat mengidentifikasi sumber kesalahan 429, penyedia hosting web Anda mungkin dapat memberikan informasi:
- Buka tiket dukungan pada penyedia hosting Anda dan jelaskan masalahnya.
- Minta mereka untuk memeriksa log server untuk aktivitas yang tidak biasa atau aturan pembatasan kecepatan.
- Mereka mungkin akan meningkatkan batas kecepatan server untuk sementara atau membantu Anda memblokir lalu lintas yang bermasalah.
Langkah 7: Sesuaikan Pengaturan Plugin Keamanan (WordPress)
Jika Anda menggunakan pengaya keamanan seperti Wordfence atau iThemes Security, periksa pengaturan pembatas kecepatan:
- Buka pengaturan plugin di dasbor WordPress Anda.
- Cari pengaturan pembatasan laju atau proteksi brute force.
- Sesuaikan ambang batas untuk upaya login dan tingkat permintaan agar lebih lunak.
- Simpan perubahan dan uji situs web Anda untuk melihat apakah kesalahan sudah teratasi.
Langkah 8: Hapus Cache dan Cookie Browser
Terkadang, kesalahan 429 mungkin tersimpan dalam cache di peramban Anda:
- Hapus Cache di Chrome:
- Buka Pengaturan > Privasi dan Keamanan > Hapus data penelusuran.
- Pilih Gambar dan file yang tersimpan dalam cache dan Cookie dan data situs lainnya, lalu klik Hapus data.
- Coba Mode Penyamaran: Jika menghapus cache tidak berhasil, coba akses situs web dalam mode Penyamaran untuk mengesampingkan masalah cache.
Ringkasan
Kesalahan 429 Terlalu Banyak Permintaan dapat disebabkan oleh pengaturan pembatasan kecepatan, permintaan API yang berlebihan, atau lalu lintas berbahaya. Berikut ini adalah rekap singkat tentang cara memperbaiki masalah tersebut:
- Identifikasi sumber permintaan yang berlebihan menggunakan log server.
- Tingkatkan batas kecepatan pada .htaccess atau nginx.conf jika lalu lintas yang sah menyebabkan masalah ini.
- Nonaktifkan plugin untuk sementara waktu guna mengidentifikasi dan memperbaiki skrip yang salah konfigurasi.
- Sesuaikan batas permintaan API dan gunakan pelambatan untuk menghindari melebihi batas laju API.
- Blokir bot dan gunakan Firewall Aplikasi Web untuk mengelola lalu lintas.
- Hubungi penyedia hosting Anda untuk mendapatkan dukungan jika masalah terus berlanjut.
Dengan mengikuti langkah-langkah ini, Anda bisa mengatasi error 429 dan memastikan situs web Anda tetap dapat diakses oleh pengguna yang sah.