Error Code 521: Arti “Web Server Is Down” dan Cara Memperbaikinya

Anda membuka sebuah situs web dan melihat halaman Cloudflare berwarna abu-abu: “Web server is down. Error code 521.” Browser Anda menampilkan “Working”, Cloudflare menampilkan “Working”, sedangkan host menampilkan “Error”. Jika itu situs Anda, setiap menit situs dalam kondisi seperti ini berarti kehilangan pengunjung, penjualan, dan kepercayaan.
Kabar baiknya: error 521 hampir selalu disebabkan oleh salah satu dari beberapa penyebab umum, dan sebagian besar bisa diperbaiki dalam hitungan menit setelah Anda tahu penyebabnya. Panduan ini menunjukkan cara menemukan penyebab pastinya dengan cepat, memperbaikinya dengan perintah yang tinggal disalin, dan mencegahnya muncul kembali, termasuk dua penyebab yang terlewat di sebagian besar panduan lain.
Jawaban singkat
Error code 521 berarti Cloudflare mencoba terhubung ke origin server situs web, tetapi server menolak koneksi tersebut. Penyebab yang paling umum adalah web server yang berhenti berjalan, firewall yang memblokir alamat IP Cloudflare, atau pengaturan SSL yang mengarahkan Cloudflare ke port yang tidak didengarkan oleh layanan apa pun. Jika Anda pengunjung, masalahnya ada di sisi situs web, bukan di sisi Anda. Jika Anda pemilik situs, mulailah dengan memeriksa apakah web server berjalan dan apakah rentang IP Cloudflare sudah diizinkan.
Situs Anda gagal dimuat hanya di beberapa negara? Uji situs seperti yang dilihat pengunjung sebenarnya dengan proxy residensial rotating CyberYozh di 195+ negara, mulai dari $2/GB. Cara persisnya kami tunjukkan di bawah.
Anda pengunjung atau pemilik situs: mulai dari sini
Jika Anda pengunjung situs:
Error 521 tidak disebabkan oleh perangkat, browser, atau koneksi internet Anda
Tunggu beberapa menit lalu muat ulang. Banyak error 521 hilang setelah server dimulai ulang
Jika berlangsung lebih lama, pemilik situs perlu memperbaikinya. Beri tahu mereka jika memungkinkan
VPN atau proxy biasanya tidak membantu, karena server menolak Cloudflare itu sendiri. Pengecualiannya adalah pemblokiran regional, yang dibahas di bawah
Jika Anda pemilik situs:
Apakah web server Anda berjalan? → Langkah 1
Apakah situs termuat saat Anda melewati Cloudflare? Jika ya → Langkah 3–5. Jika tidak → Langkah 1, 2, dan 6
Apakah error terus muncul kembali setiap beberapa hari? → “Mengapa error 521 terus kembali”
Apakah error hanya terjadi di beberapa negara? → “Error 521 hanya di beberapa negara?”
Apa arti error code 521

Error code 521 adalah cara Cloudflare mengatakan “Saya berhasil menjangkau server Anda, tetapi server menolak berkomunikasi dengan saya.” Kode ini bukan kode status HTTP resmi. Ini adalah salah satu kode 5xx milik Cloudflare sendiri, sehingga Anda juga akan melihatnya ditulis sebagai HTTP error 521 atau status code 521.
Pada halaman error Cloudflare, diagram menunjukkan persis di mana masalahnya: browser dan Cloudflare baik-baik saja, sedangkan kotak ketiga berlabel “Host” menampilkan Error. “Cloudflare host error” itu berarti masalahnya ada di origin server, yaitu mesin yang benar-benar menjalankan situs web.
Perbedaannya dengan kode di sekitarnya:
520: server menjawab, tetapi dengan respons kosong atau tidak valid. Lihat panduan kami tentang error code 520
521: server menolak koneksi
522: server tidak menjawab tepat waktu
Apa itu error code 521 di Cloudflare
Ketika seseorang mengunjungi situs yang menggunakan Cloudflare, permintaan tersebut lebih dulu masuk ke pusat data Cloudflare. Cloudflare kemudian membuka koneksi ke origin server Anda untuk mengambil halaman. Error code 521 di Cloudflare muncul saat koneksi tersebut ditolak secara aktif.
Menurut dokumentasi Cloudflare, ada dua penyebab utama:
Aplikasi web server sedang offline, misalnya Nginx atau Apache mengalami crash atau berhenti
Permintaan Cloudflare diblokir di origin, biasanya oleh firewall, plugin keamanan, atau pembatas laju (rate limiter)
Setiap perbaikan di bawah ini menangani salah satu dari dua penyebab tersebut.
Cara memperbaiki error code 521 di Cloudflare (7 langkah)

Ikuti langkah-langkah ini secara berurutan. Sebagian besar error 521 teratasi pada langkah 3.
Langkah 1: Periksa apakah web server berjalan
Hubungkan ke server Anda dan periksa status web server:
sudo systemctl status nginx # or: apache2 / httpd
sudo systemctl restart nginx # restart it if it's stopped
If it keeps stopping, check why. A common cause is the server running out of memory:
bash
sudo journalctl -u nginx --since "1 hour ago"
sudo dmesg | grep -i "killed process"Langkah 2: Uji server secara langsung, tanpa melewati Cloudflare
Langkah ini memberi tahu Anda apakah server itu sendiri berfungsi. Ganti ORIGIN_IP dengan alamat IP asli server Anda:
curl -I --resolve example.com:443:ORIGIN_IP https://example.com
sudo ss -tlnp | grep -E ':80|:443'Perintah pertama memuat situs Anda langsung dari server. Perintah kedua menunjukkan apakah ada layanan yang mendengarkan di port 80 dan 443. Jika tidak ada yang mendengarkan, Cloudflare tidak memiliki tujuan untuk terhubung.
Langkah 3: Izinkan alamat IP Cloudflare di firewall Anda
Ini adalah perbaikan yang paling umum. Cloudflare menerbitkan daftar lengkap rentang IP-nya di cloudflare.com/ips. Izinkan semuanya di port 80 dan 443. Dengan ufw:
for ip in $(curl -s https://www.cloudflare.com/ips-v4) $(curl -s https://www.cloudflare.com/ips-v6); do
sudo ufw allow from "$ip" to any port 80,443 proto tcp
donePeriksa juga:
Plugin keamanan seperti Wordfence, serta alat server seperti Imunify360 atau CSF
Pemblokir IP di panel kontrol hosting Anda, misalnya di cPanel
Firewall jaringan atau perlindungan DDoS dari host Anda, yang mungkin tidak bisa Anda kendalikan langsung
Kesalahan umum: menempelkan aturan .htaccess yang “menolak semua, mengizinkan Cloudflare”. Aturan ini bisa mengunci alat pemantauan dan admin Anda sendiri. Izinkan rentang Cloudflare tanpa memblokir yang lain, kecuali Anda sudah merencanakannya.
Langkah 4: Sesuaikan mode SSL/TLS dengan port yang tepat
Cloudflare terhubung melalui port yang berbeda tergantung pada pengaturan SSL/TLS Anda:
Mode SSL/TLS Cloudflare | Port tujuan koneksi Cloudflare | Yang dibutuhkan server Anda |
Flexible | 80 | Web server yang mendengarkan di port 80 |
Full | 443 | Web server yang mendengarkan di port 443 dengan sertifikat apa pun |
Full (strict) | 443 | Port 443 dengan sertifikat yang valid, seperti Cloudflare Origin Certificate gratis |
Jika Anda beralih ke Full dan langsung mendapat error 521, kemungkinan server Anda tidak mendengarkan di port 443.
Langkah 5: Periksa record DNS Anda, termasuk IPv6
Di pengaturan DNS Cloudflare Anda, pastikan record A mengarah ke alamat IP server Anda saat ini. Kemudian cari record AAAA (IPv6). Jika record tersebut ada tetapi server Anda tidak menerima koneksi IPv6, Cloudflare mungkin mencoba IPv6 lalu ditolak, sementara situs berfungsi normal saat Anda mengujinya lewat IPv4. Hapus record AAAA, atau atur web server Anda agar mendengarkan di IPv6.
Langkah 6: Periksa pengaturan Docker atau reverse proxy
Jika situs Anda berjalan di Docker atau di belakang alat seperti Nginx Proxy Manager, pastikan port container sudah dipublikasikan, misalnya -p 80:80 -p 443:443. Periksa juga bahwa aplikasi mendengarkan di 0.0.0.0, bukan hanya di 127.0.0.1. Aplikasi yang hanya mendengarkan di localhost akan menolak semua koneksi dari luar, termasuk dari Cloudflare.
Langkah 7: Hubungi penyedia hosting Anda
Jika tidak ada langkah di atas yang berhasil, host Anda mungkin memblokir Cloudflare di tingkat jaringan. Kirimkan kepada mereka Ray ID yang tampil di bagian bawah halaman error Cloudflare, beserta waktu terjadinya error. Dengan begitu mereka dapat menemukan permintaan yang diblokir.
Mengapa error 521 terus kembali
Inilah pertanyaan yang memenuhi forum hosting, dan sebagian besar panduan tidak pernah menjawabnya. Situs Anda berfungsi, lalu menampilkan 521 untuk beberapa saat, kemudian pulih sendiri.
Penyebab yang biasa: di balik Cloudflare, setiap pengunjung menjangkau server Anda dari alamat IP Cloudflare. Alat keamanan seperti fail2ban, CSF, atau mod_evasive, atau rate limiter bawaan server Anda, melihat ribuan permintaan dari segelintir IP, menganggapnya serangan, lalu memblokirnya sementara. “Penyerang” itu adalah Cloudflare, sehingga situs menampilkan error 521 hingga pemblokiran berakhir.
Perbaikan yang sebenarnya terdiri dari dua bagian:
1. Tampilkan alamat IP asli setiap pengunjung ke server Anda. Cloudflare mengirimkannya di header CF-Connecting-IP.
Untuk Nginx:
nginx
# Repeat set_real_ip_from for every range listed at cloudflare.com/ips
set_real_ip_from 173.245.48.0/20;
real_ip_header CF-Connecting-IP;
For Apache, using mod_remoteip:
apache
RemoteIPHeader CF-Connecting-IP
# Repeat for every range listed at cloudflare.com/ips
RemoteIPTrustedProxy 173.245.48.0/202. Tambahkan rentang Cloudflare ke daftar pengecualian alat keamanan Anda, misalnya ignoreip di fail2ban atau csf.ignore di CSF. Dengan begitu alat Anda hanya memblokir pengunjung yang benar-benar menyalahgunakan, bukan Cloudflare.
Pemeriksaan cepat: jika log firewall Anda menunjukkan pemblokiran pada IP yang diawali 173.245., 104.16., atau 172.64., Anda telah menemukan penyebabnya. Itu adalah rentang Cloudflare.
Error 521 hanya di beberapa negara: uji dari berbagai lokasi
Terkadang situs berfungsi sempurna bagi Anda tetapi menampilkan error 521 kepada pengunjung di tempat lain. Setiap pusat data Cloudflare terhubung ke server Anda dari rentang IP-nya sendiri. Jika firewall Anda, atau aturan pemblokiran negara di alat seperti CSF, memblokir sebagian rentang tersebut, hanya pengunjung yang dirutekan melalui pusat data itu yang melihat error.
Setiap situs Cloudflare memiliki halaman diagnostik bawaan di /cdn-cgi/trace. Baris colo= di dalamnya menunjukkan pusat data Cloudflare mana yang menangani permintaan Anda. Untuk melihat apa yang diterima pengunjung di berbagai negara, jalankan pemeriksaan melalui proxy residensial yang berlokasi di negara-negara tersebut:
import requests
SITE = "https://example.com"
PROXIES = { # one proxy per country you want to test
"US": "http://USERNAME:PASSWORD@GATEWAY_HOST:PORT",
"DE": "http://USERNAME:PASSWORD@GATEWAY_HOST:PORT",
"SG": "http://USERNAME:PASSWORD@GATEWAY_HOST:PORT",
}
for country, proxy in PROXIES.items():
p = {"http": proxy, "https": proxy}
trace = requests.get(f"{SITE}/cdn-cgi/trace", proxies=p, timeout=15).text
colo = next((line[5:] for line in trace.splitlines() if line.startswith("colo=")), "?")
status = requests.get(SITE, proxies=p, timeout=15).status_code
print(f"{country}: Cloudflare data center {colo}, status {status}")Jika satu negara mengembalikan 521 sementara yang lain mengembalikan 200, Anda telah menemukan pemblokiran regional. Periksa firewall dan aturan negara Anda untuk rentang Cloudflare yang melayani wilayah tersebut.
Uji situs Anda dari 195+ negara: gunakan proxy residensial rotating CyberYozh dengan penargetan negara, mulai dari $2/GB, dengan trafik tak terpakai yang terbawa ke periode berikutnya. Perlu melihat apa yang diterima pengunjung seluler? Coba proxy seluler LTE/5G CyberYozh. Pastikan dulu lokasi setiap proxy dengan pemeriksa IP CyberYozh gratis.
Menemui error 521 saat scraping: jangan buang trafik proxy
Jika scraper atau alat SEO Anda menemui error 521, server situs target sedang down atau menolak Cloudflare. Anda tidak sedang diblokir. Berganti ke IP baru tidak akan membantu, dan setiap percobaan ulang menghabiskan trafik.
Yang sebaiknya dilakukan:
Mundur dulu (back off), dengan memperpanjang jeda antar percobaan ulang, dan berhenti setelah tiga atau empat kali percobaan
Uji sekali dari wilayah lain. Jika hanya satu wilayah yang gagal, itu pemblokiran regional di sisi target
Pindahkan URL ke antrean percobaan ulang dan biarkan sisa pekerjaan terus berjalan
Catat error 521 secara terpisah dari pemblokiran seperti 403 atau 1020 dari Cloudflare, agar angka tingkat keberhasilan Anda tetap jujur
Untuk pekerjaan skala besar, proxy backconnect rotating menangani rotasi IP untuk pemblokiran yang sebenarnya, sementara kode Anda menangani error 521 dengan backoff. Use case web scraping kami menunjukkan bagaimana tim menyiapkannya.
Cara mencegah error 521

Pantau uptime dari beberapa lokasi, agar Anda tahu tentang error 521 sebelum pengunjung
Selalu perbarui daftar IP Cloudflare di firewall Anda. Cloudflare sesekali memperbarui rentangnya
Atur web server agar restart sendiri setelah crash, misalnya dengan Restart=always di layanan systemd-nya
Pulihkan IP asli pengunjung agar alat keamanan tidak pernah memblokir Cloudflare
Uji perubahan SSL dan DNS di domain staging sebelum mengubah situs live Anda
Pantau memori dan CPU, karena server yang kehabisan memori berhenti menerima koneksi
Kesimpulan
Error code 521 tampak mengkhawatirkan, tetapi termasuk error Cloudflare yang lebih mudah diperbaiki karena penyebabnya selalu ada di server Anda sendiri. Periksa apakah web server berjalan, izinkan rentang IP Cloudflare, sesuaikan mode SSL dengan port yang tepat, dan cari record AAAA yang terlupakan. Jika error terus kembali, hentikan alat keamanan Anda dari memblokir Cloudflare. Jika hanya muncul di beberapa negara, uji dari negara-negara tersebut sebelum mengubah apa pun.
Lihat situs Anda seperti dunia melihatnya: telusuri semua paket di katalog CyberYozh, dengan proxy residensial rotating di 195+ negara mulai dari $2/GB dan proxy seluler LTE/5G mulai dari $1.70 per hari.
