Server Solusi – Pindah hosting tidak selalu membuat website langsung berjalan normal, terutama jika domain masih menggunakan Cloudflare sebagai proxy. Salah satu masalah yang bisa muncul setelah proses migrasi adalah Error 521: Web server is down.
Hal ini biasanya terjadi ketika Cloudflare berhasil menerima permintaan pengunjung, tetapi gagal membuat koneksi ke web server pada hosting baru. Penyebabnya bisa berupa alamat IP origin yang belum diperbarui, web server yang tidak berjalan, atau firewall yang menolak koneksi dari jaringan Cloudflare.
Hal penting yang perlu dipahami: Error 521 tidak otomatis berarti server hosting baru sedang mati. Server mungkin aktif dan bisa diakses melalui SSH, tetapi koneksi HTTP atau HTTPS dari Cloudflare tetap ditolak.
Saya akan menggunakan pendekatan diagnosis bertahap agar kamu bisa menemukan sumber masalah sebelum mengubah DNS, firewall, atau konfigurasi web server secara sembarangan.
Cara Mengatasi Cloudflare Error 521
Untuk mengatasi Cloudflare error 521 setelah pindah hosting, periksa terlebih dahulu apakah DNS Cloudflare sudah mengarah ke IP server baru. Setelah itu, pastikan web server seperti Nginx, Apache, atau OpenLiteSpeed berjalan dan menerima koneksi pada port 80 atau 443.
Jika DNS dan web server sudah benar, periksa firewall server maupun firewall dari provider hosting. Pastikan koneksi dari alamat IP Cloudflare tidak diblokir.
Jangan langsung mematikan firewall atau mengubah konfigurasi DNS secara acak. Lakukan pemeriksaan dari sisi Cloudflare dan origin server supaya kamu bisa membedakan masalah DNS, layanan web server, dan pemblokiran koneksi.
Memahami Penyebab Error 521 Setelah Migrasi Hosting
Cloudflare bertindak sebagai perantara antara pengunjung dan origin server. Alur normalnya seperti ini:
Pengunjung website
Cloudflare
Menerima dan meneruskan request
Origin server / hosting baru
Nginx, Apache, OpenLiteSpeed, atau web server lain
Error 521 muncul ketika origin server menolak koneksi dari Cloudflare. Ini berbeda dari error 522 yang berkaitan dengan koneksi ke origin yang mengalami timeout.
Setelah pindah hosting, ada beberapa titik yang perlu diperiksa.
A. DNS Cloudflare masih mengarah ke IP hosting lama
Ini salah satu hal pertama yang perlu diperiksa setelah migrasi.

Misalnya, sebelum pindah hosting website menggunakan IP:
203.0.113.10Kemudian provider memberikan IP server baru:
198.51.100.20Namun, record A di Cloudflare masih menggunakan IP lama. Akibatnya, Cloudflare tetap mencoba menghubungi server yang sebelumnya digunakan.
Alamat di atas hanya contoh dokumentasi, bukan IP server sungguhan.
B. Web server di hosting baru belum berjalan
Server VPS bisa saja aktif, SSH bisa diakses, tetapi layanan web server belum berjalan.
Contohnya:
Nginx belum aktif.
Apache gagal dijalankan karena konfigurasi bermasalah.
OpenLiteSpeed belum berjalan.
Web server hanya mendengarkan koneksi pada alamat atau port tertentu.
Cloudflare tidak cukup hanya bisa menjangkau mesin VPS. Layanan HTTP atau HTTPS yang menjadi tujuan koneksi juga harus menerima koneksi.
C. Firewall memblokir IP Cloudflare
Setelah pindah hosting, konfigurasi firewall bisa berbeda dari server sebelumnya.
Beberapa kemungkinan yang perlu diperiksa:
UFW hanya mengizinkan koneksi dari IP tertentu.
Firewall provider belum membuka port 80 dan 443.
Fail2ban atau sistem keamanan lain memblokir alamat IP Cloudflare.
Aturan
iptablesataunftablesmenolak koneksi masuk.ModSecurity atau software keamanan server menerapkan aturan yang terlalu ketat.
Cloudflare secara khusus menyarankan agar seluruh rentang IP Cloudflare diizinkan pada firewall origin.
D. Record IPv6 masih mengarah ke server lama
Jangan hanya memeriksa record A. Perhatikan juga record AAAA.
Jika hosting lama menggunakan IPv6 dan hosting baru tidak menyediakan alamat IPv6 yang sama, record AAAA yang tertinggal dapat membuat koneksi menuju alamat yang tidak lagi sesuai.
E. Port origin tidak sesuai dengan konfigurasi SSL/TLS
Cloudflare perlu terhubung ke port origin yang sesuai dengan mode SSL/TLS.
| Mode SSL/TLS | Port origin yang digunakan |
|---|---|
| Flexible | 80 |
| Full | 443 |
| Full (Strict) | 443 |
Jika Cloudflare menggunakan Full atau Full (Strict), tetapi web server tidak menerima koneksi HTTPS pada port 443, koneksi origin bisa gagal. Pada mode Full (Strict), sertifikat origin juga harus memenuhi persyaratan validasi Cloudflare.
Cara Diagnosis Cloudflare Error 521
Sebelum mengubah konfigurasi, saya sarankan memeriksa masalah secara berurutan. Dengan cara ini, kamu tidak perlu mengubah banyak komponen sekaligus.

1. Periksa IP hosting baru
Masuk ke dashboard provider hosting atau VPS, lalu cari alamat IPv4 dan IPv6 yang diberikan untuk server baru.
Jika kamu memiliki akses SSH, jalankan:
ip -br addrPerintah tersebut menampilkan interface jaringan beserta alamat IP yang terpasang pada server.
Namun, alamat IP yang terlihat di output belum tentu merupakan IP publik yang harus digunakan domain. Pada sebagian infrastruktur, VPS berada di belakang NAT. Jika ragu, gunakan IP publik yang diberikan oleh provider.
Catat alamat IP origin yang benar sebelum melanjutkan.
2. Periksa DNS record di Cloudflare
Buka dashboard Cloudflare, pilih domain, lalu masuk ke menu DNS → Records.
Periksa record berikut:
| Type | Name | Content |
|---|---|---|
| A | @ | IP IPv4 server baru |
| A | www | IP IPv4 server baru |
| AAAA | @ | IPv6 server baru, jika digunakan |
| AAAA | www | IPv6 server baru, jika digunakan |
Tidak semua website memiliki susunan record yang sama. Jika www menggunakan CNAME, periksa target CNAME tersebut dan pastikan akhirnya mengarah ke origin yang benar.
Cloudflare mendokumentasikan bahwa perubahan alamat origin perlu diperbarui pada record DNS yang relevan, biasanya A atau AAAA.
Kamu juga bisa memeriksa resolusi DNS dari terminal:
dig example.com A +shortdig example.com AAAA +shortdig www.example.com A +shortdig www.example.com AAAA +shortGanti example.com dengan domain kamu.
Catatan penting: jika record Cloudflare menggunakan status Proxied (awan oranye), hasil dig biasanya menampilkan IP Cloudflare, bukan IP origin. Jadi, jangan langsung menyimpulkan DNS salah hanya karena hasilnya bukan IP VPS baru. Periksa nilai Content langsung di dashboard Cloudflare.
3. Pastikan web server berjalan
Setelah memastikan IP origin, masuk ke VPS melalui SSH.
Periksa layanan yang digunakan.
Jika menggunakan Nginx:
systemctl status nginxJika menggunakan Apache di Ubuntu atau Debian:
systemctl status apache2Jika menggunakan Apache di beberapa distribusi lain:
systemctl status httpdJika menggunakan OpenLiteSpeed:
systemctl status lswsPerhatikan bagian Active.
Jika tertulis:

Active: active (running)berarti service sedang berjalan.
Jika tertulis failed, periksa log service sebelum mencoba menjalankannya kembali:
journalctl -u nginx -n 100 --no-pagerGanti nginx dengan nama service yang sesuai.
Jika service tidak aktif, jangan langsung melakukan restart berulang kali. Cari penyebab kegagalannya terlebih dahulu, misalnya konfigurasi salah, port bentrok, atau sertifikat yang tidak ditemukan.
4. Periksa apakah port 80 dan 443 sedang listening
Web server yang berstatus running belum tentu mendengarkan koneksi pada port yang diperlukan.
Jalankan:
ss -tulpn | grep -E ':(80|443)\b'Perintah ini menampilkan proses yang sedang mendengarkan port TCP 80 dan 443.
Contoh kondisi yang diharapkan:
LISTEN 0 511 0.0.0.0:80LISTEN 0 511 0.0.0.0:443Output tersebut hanya ilustrasi. Nama proses, alamat bind, dan jumlah koneksi dapat berbeda.
Hal yang perlu diperhatikan:
Jika port 80 tidak muncul, periksa konfigurasi HTTP web server.
Jika port 443 tidak muncul, periksa konfigurasi HTTPS.
Jika hanya muncul
127.0.0.1:80, layanan mungkin hanya menerima koneksi lokal.Jika port digunakan proses lain, periksa kemungkinan konflik layanan.
Alamat 0.0.0.0 menunjukkan layanan menerima koneksi pada seluruh alamat IPv4 lokal. Untuk IPv6, perhatikan alamat bind seperti [::].
5. Uji koneksi langsung ke origin server
Ini salah satu pemeriksaan paling berguna untuk membedakan masalah Cloudflare dengan masalah web server.
Dari mesin yang memiliki akses jaringan ke origin, jalankan:
curl -I --connect-timeout 10 \--resolve example.com:80:198.51.100.20 \http://example.com/Untuk HTTPS:
curl -I --connect-timeout 10 \--resolve example.com:443:198.51.100.20 \https://example.com/Ganti domain dan IP contoh dengan milikmu.
Opsi --resolve memaksa curl menghubungi IP origin yang ditentukan, tetapi tetap menggunakan hostname domain untuk request dan TLS SNI. Ini berguna untuk menguji virtual host tanpa harus mengubah DNS publik.
Interpretasi hasil:
Jika mendapatkan HTTP
200, web server memberikan respons normal.Jika mendapatkan HTTP
301atau302, server memberikan redirect. Periksa apakah tujuan redirect memang benar.Jika mendapatkan HTTP
403, koneksi berhasil tetapi request ditolak oleh aturan akses.Jika mendapatkan HTTP
404, koneksi berhasil, tetapi resource atau virtual host yang diminta mungkin tidak sesuai.Jika
Connection refused, periksa apakah port menerima koneksi dan apakah firewall melakukan penolakan.Baca JugaPort 443 Tidak Bisa Diakses dari Luar VPS? Ini Cara Diagnosis dan Memperbaikinya![Port 443 Tidak Bisa Diakses dari Luar VPS? Ini Cara Diagnosis dan Memperbaikinya]()
Jika
Connection timed out, periksa routing, firewall, dan akses jaringan ke origin.
Pengujian ini sebaiknya dilakukan dari jaringan eksternal juga. Tes dari dalam VPS saja belum membuktikan bahwa Cloudflare dapat mencapai origin melalui jaringan publik.
6. Periksa firewall di VPS
Jika web server berjalan dan port sudah listening, lanjutkan dengan pemeriksaan firewall.
Untuk UFW:
ufw status verboseJika UFW aktif, pastikan aturan yang berlaku mengizinkan koneksi HTTP dan HTTPS.
Kamu bisa melihat aturan yang sudah ada dengan:
ufw status numberedJika memang belum ada izin untuk web traffic, tambahkan aturan berikut:
ufw allow 80/tcpufw allow 443/tcpPerintah tersebut membuka port 80 dan 443 untuk semua alamat sumber. Jika kebijakan server kamu hanya mengizinkan koneksi dari Cloudflare, gunakan aturan allowlist yang sesuai dan jangan menambahkan aturan umum tanpa mempertimbangkan kebijakan keamanan yang sudah diterapkan.
Untuk server yang menggunakan nftables:
nft list rulesetUntuk server yang masih menggunakan iptables:
iptables -SJika menggunakan IPv6, periksa juga aturan IPv6:
ip6tables -SCari aturan yang melakukan DROP atau REJECT terhadap koneksi TCP pada port 80 dan 443.
Jangan langsung menjalankan perintah untuk menghapus seluruh aturan firewall. Tindakan tersebut dapat membuka akses yang sebelumnya sengaja dibatasi atau mengganggu layanan lain.
7. Periksa firewall dari provider hosting
Firewall tidak selalu dikelola langsung dari dalam VPS. Beberapa provider menyediakan firewall eksternal melalui dashboard mereka.
Periksa apakah:
Port TCP 80 sudah diizinkan.
Port TCP 443 sudah diizinkan.
Tidak ada aturan yang hanya mengizinkan IP tertentu.
Tidak ada kebijakan keamanan yang memblokir koneksi dari jaringan Cloudflare.
Jika provider menyediakan fitur firewall terpisah, aturan di sana tetap perlu diperiksa meskipun ufw status menunjukkan port sudah diizinkan.
8. Periksa apakah IP Cloudflare diblokir
Jika website dapat dibuka langsung melalui IP origin, tetapi gagal ketika menggunakan proxy Cloudflare, salah satu kemungkinan yang perlu diperiksa adalah pemblokiran IP Cloudflare.
Periksa konfigurasi:
UFW, iptables, atau nftables.
Fail2ban.
CSF (ConfigServer Security & Firewall), jika digunakan.
ModSecurity.
Plugin keamanan WordPress.
Sistem proteksi dari provider hosting.
Cloudflare menyediakan daftar resmi rentang IPv4 dan IPv6 yang digunakan jaringannya. Gunakan daftar tersebut sebagai sumber allowlist, bukan daftar IP dari artikel atau forum yang belum tentu diperbarui.
Dokumentasi resmi:
Jika kamu menggunakan firewall yang mendukung allowlist, izinkan seluruh rentang Cloudflare pada port web yang digunakan. Pastikan aturan tersebut tidak menimpa kebijakan keamanan lain.
Perhatikan juga konfigurasi Fail2ban. Jika IP Cloudflare masuk daftar blokir, cari jail yang melakukan pemblokiran dan periksa log sebelum melakukan unban. Jangan menghapus seluruh database ban tanpa mengetahui penyebabnya.
9. Periksa log web server
Jika semua pemeriksaan sebelumnya belum menemukan penyebabnya, lanjutkan ke log.
Untuk Nginx:
tail -n 100 /var/log/nginx/error.logUntuk Apache Ubuntu/Debian:
tail -n 100 /var/log/apache2/error.logUntuk OpenLiteSpeed, lokasi log dapat berbeda berdasarkan konfigurasi. Lokasi yang umum digunakan:
tail -n 100 /usr/local/lsws/logs/error.logPeriksa pesan yang muncul pada waktu yang sama ketika Error 521 terjadi.
Beberapa petunjuk yang bisa dicari:
address already in use: kemungkinan port digunakan proses lain.bind() failed: web server gagal melakukan bind ke alamat atau port.permission denied: proses tidak memiliki izin yang diperlukan.Kesalahan konfigurasi virtual host.
Service berhenti atau mengalami crash.
Perlu diingat, tidak semua kegagalan koneksi Cloudflare akan menghasilkan catatan di error log web server. Jika paket koneksi ditolak oleh firewall sebelum mencapai web server, log aplikasi bisa saja tidak menunjukkan apa pun.
Cara Mengatasi Cloudflare Error 521 Setelah Pindah Hosting
Setelah diagnosis, pilih solusi berdasarkan temuan. Jangan menjalankan semua langkah sekaligus karena kamu bisa kehilangan petunjuk tentang penyebab awalnya.
1. Perbarui IP origin pada DNS Cloudflare
Jika record DNS masih mengarah ke IP hosting lama, perbarui nilainya.
Caranya:
Masuk ke dashboard Cloudflare.
Pilih domain yang bermasalah.
Buka menu DNS → Records.
Cari record
Auntuk domain utama.Ubah nilai
Contentmenjadi IPv4 server baru.Periksa record
wwwdan subdomain website lainnya.Periksa juga record
AAAAjika server menggunakan IPv6.
Pertahankan status proxy sesuai kebutuhan website. Jika sebelumnya menggunakan Proxied, kamu tidak harus mematikan proxy hanya karena pindah hosting.
Cloudflare menggunakan record DNS tersebut untuk menentukan origin yang akan menerima request.
Verifikasi: periksa kembali nilai record pada dashboard dan lakukan pengujian koneksi langsung ke IP origin menggunakan curl --resolve.
2. Jalankan web server yang berhenti
Jika service web server tidak aktif, periksa konfigurasi terlebih dahulu.
Untuk Nginx:
nginx -tJika hasil validasi menunjukkan konfigurasi berhasil, kamu dapat menjalankan service:
systemctl start nginxUntuk Apache Ubuntu/Debian:
apachectl configtestsystemctl start apache2Untuk OpenLiteSpeed:
/usr/local/lsws/bin/openlitespeed -tsystemctl start lswsPerintah validasi dan ketersediaannya dapat berbeda menurut distribusi serta versi software. Jika binary atau opsi tersebut tidak tersedia, gunakan mekanisme pemeriksaan yang disediakan instalasi web server kamu.
Jika service sudah aktif tetapi sebelumnya gagal, periksa log untuk memastikan tidak ada kesalahan yang berulang.
Verifikasi:
systemctl status nginxss -tulpn | grep -E ':(80|443)\b'Sesuaikan nama service dengan web server yang digunakan.
3. Izinkan koneksi Cloudflare pada firewall
Jika firewall terbukti memblokir alamat IP Cloudflare, tambahkan aturan allowlist untuk rentang IP resmi Cloudflare.
Jangan menyalin satu alamat IP saja. Cloudflare menggunakan banyak rentang IPv4 dan IPv6, sehingga allowlist harus mencakup rentang yang relevan.
Urutan yang aman:
Backup konfigurasi firewall.
Ambil daftar IP dari dokumentasi resmi Cloudflare.
Periksa kebijakan firewall yang sudah aktif.
Tambahkan aturan allowlist untuk port origin yang digunakan.
Pastikan aturan allowlist ditempatkan sebelum aturan penolakan yang relevan.
Uji koneksi melalui Cloudflare.
Pastikan layanan lain tetap berjalan normal.
Contoh aturan iptables untuk satu rentang IPv4:
iptables -I INPUT -p tcp \-s 192.0.2.0/24 \--dport 443 \-j ACCEPTAlamat 192.0.2.0/24 di atas hanya contoh dokumentasi. Jangan gunakan sebagai allowlist Cloudflare. Ganti dengan rentang resmi yang sesuai.
Aturan tersebut juga hanya contoh untuk port 443 dan belum mencakup IPv6 maupun mekanisme penyimpanan aturan permanen. Sesuaikan dengan firewall yang benar-benar digunakan.
4. Perbaiki konfigurasi SSL/TLS origin
Jika Cloudflare menggunakan mode Full atau Full (Strict), pastikan web server memiliki layanan HTTPS pada port 443.
Periksa mode SSL/TLS di dashboard:
Cloudflare → SSL/TLS → Overview
Kemudian cocokkan dengan kondisi origin:
Flexible membutuhkan origin yang menerima HTTP pada port 80.
Full membutuhkan origin yang menerima HTTPS pada port 443.
Full (Strict) membutuhkan HTTPS origin dengan sertifikat yang valid sesuai persyaratan Cloudflare.
Jika menggunakan Cloudflare Origin CA Certificate, pastikan sertifikat dan private key sudah dipasang pada virtual host yang benar.
Jangan menurunkan mode SSL/TLS menjadi Flexible hanya untuk menghilangkan error tanpa memahami konsekuensi keamanannya. Mode tersebut mengubah koneksi Cloudflare ke origin menjadi HTTP.
Verifikasi: uji HTTPS langsung ke origin menggunakan:
curl -Iv --connect-timeout 10 \--resolve example.com:443:198.51.100.20 \https://example.com/Jika terjadi kesalahan sertifikat, periksa nama domain, masa berlaku, certificate chain, dan konfigurasi virtual host. Pengujian dengan -k dapat membantu mengisolasi masalah konektivitas dari validasi sertifikat, tetapi jangan menganggap hasil -k sebagai bukti bahwa konfigurasi TLS sudah benar.
5. Hapus atau perbaiki record IPv6 yang sudah tidak relevan
Jika hosting baru tidak menyediakan IPv6, tetapi DNS Cloudflare masih memiliki record AAAA yang menunjuk ke alamat server lama, periksa apakah record tersebut memang masih diperlukan.
Jika tidak digunakan, hapus atau nonaktifkan record yang sudah tidak relevan setelah memastikan tidak ada layanan lain yang bergantung padanya.
Jangan menghapus seluruh record IPv6 secara membabi buta. Pastikan dulu apakah provider baru mendukung IPv6 dan apakah domain atau subdomain tersebut memang menggunakannya.
Verifikasi Setelah Perbaikan
Setelah melakukan perubahan, jangan langsung menganggap masalah selesai hanya karena halaman error tidak muncul sekali.
Lakukan beberapa pemeriksaan berikut.
Pastikan web server aktif
systemctl is-active nginxJika menggunakan Apache atau OpenLiteSpeed, sesuaikan nama service.
Hasil active menunjukkan service sedang berjalan. Namun, ini belum membuktikan website dapat diakses dari luar server.
Uji koneksi langsung ke origin
curl -I --connect-timeout 10 \--resolve example.com:443:198.51.100.20 \https://example.com/Pastikan IP dan domain sudah diganti dengan konfigurasi sebenarnya.
Jika mendapatkan respons HTTP, berarti origin sudah memberikan respons terhadap pengujian tersebut. Periksa juga apakah status HTTP sesuai dengan yang diharapkan aplikasi.
Uji website melalui Cloudflare
Buka website menggunakan browser atau jalankan:
curl -I https://example.com/Jika origin bisa diakses langsung dan website melalui Cloudflare juga memberikan respons normal, masalah kemungkinan sudah tertangani.
Periksa kembali log
Untuk Nginx:
tail -n 50 /var/log/nginx/error.logPastikan tidak ada kesalahan baru yang berkaitan dengan koneksi, virtual host, atau service.
Ringkasan diagnosis berdasarkan hasil pemeriksaan
| Hasil pemeriksaan | Kemungkinan masalah |
|---|---|
| DNS masih menunjukkan IP lama di dashboard | Record origin belum diperbarui |
Web server berstatus failed | Service atau konfigurasi bermasalah |
| Port 80/443 tidak listening | Web server belum menerima koneksi |
Koneksi langsung mendapat Connection refused | Port tidak menerima koneksi atau ada penolakan aktif |
| Koneksi langsung timeout | Firewall atau masalah jaringan |
| Origin normal, tetapi Cloudflare 521 | Periksa allowlist IP Cloudflare dan jalur koneksi |
| HTTPS origin gagal karena sertifikat | Periksa konfigurasi TLS dan sertifikat |
Hasil tersebut merupakan petunjuk diagnosis, bukan penetapan penyebab secara otomatis. Sebagai contoh, koneksi timeout bisa berasal dari firewall VPS, firewall provider, atau masalah routing jaringan.
Pencegahan Error 521 Saat Pindah Hosting
Supaya masalah serupa tidak terulang, ada beberapa pemeriksaan yang sebaiknya dilakukan sebelum dan sesudah migrasi.
1. Catat seluruh DNS record sebelum migrasi
Sebelum memindahkan website, simpan konfigurasi DNS yang digunakan.
Minimal catat:
Record
A.Record
AAAA.Record
CNAME.Subdomain yang digunakan.
Record MX dan TXT untuk layanan email.
Jangan hanya memindahkan website utama. Subdomain seperti api, mail, cdn, atau blog mungkin memiliki konfigurasi origin berbeda.
2. Pastikan web server berjalan sebelum mengubah DNS
Sebelum mengarahkan domain ke VPS baru, pastikan:
Web server sudah terpasang.
Virtual host sudah dikonfigurasi.
Port HTTP dan HTTPS sudah listening.
Website dapat diuji langsung melalui IP origin.
Sertifikat SSL sudah sesuai dengan konfigurasi yang digunakan.
Dengan begitu, kamu tidak mengarahkan trafik pengunjung ke server yang belum siap.
3. Siapkan firewall sebelum trafik dialihkan
Jika menggunakan firewall VPS, provider, atau CSF, siapkan aturan yang diperlukan sebelum migrasi.
Pastikan rentang IP Cloudflare tidak diblokir oleh sistem keamanan server. Simpan konfigurasi firewall lama agar kamu bisa melakukan rollback jika terjadi masalah.
4. Periksa record IPv4 dan IPv6
Jangan menganggap semua hosting baru memiliki konfigurasi jaringan yang sama dengan hosting sebelumnya.
Jika hosting lama mendukung IPv6 tetapi hosting baru hanya menyediakan IPv4, sesuaikan record DNS dengan kondisi tersebut.
5. Simpan backup konfigurasi server
Simpan backup:
Konfigurasi Nginx, Apache, atau OpenLiteSpeed.
Konfigurasi virtual host.
Konfigurasi firewall.
Sertifikat dan konfigurasi SSL.
Daftar DNS record.
Backup akan membantu ketika konfigurasi baru ternyata menyebabkan masalah setelah migrasi.
FAQs
Apakah Cloudflare error 521 selalu disebabkan oleh DNS yang salah?
Tidak. DNS yang masih mengarah ke IP lama memang salah satu kemungkinan setelah migrasi, tetapi Error 521 juga dapat terjadi karena web server berhenti atau firewall memblokir koneksi dari Cloudflare.
Apakah saya harus mematikan proxy Cloudflare untuk mengatasi error 521?
Tidak harus. Sebaiknya periksa DNS origin, status web server, port, dan firewall terlebih dahulu.
Mengubah record menjadi DNS-only dapat digunakan sebagai pengujian sementara, tetapi tindakan tersebut akan membuat alamat IP origin terlihat oleh pengguna yang melakukan resolusi DNS. Gunakan dengan hati-hati dan aktifkan kembali proxy setelah pengujian selesai.
Kenapa website bisa dibuka melalui IP VPS tetapi tetap error 521?
Karena akses langsung ke VPS belum tentu melewati jalur koneksi yang sama dengan Cloudflare. Bisa saja koneksi dari perangkat kamu diizinkan, tetapi koneksi dari IP Cloudflare ditolak oleh firewall atau sistem keamanan server.
Apakah Cloudflare error 521 bisa disebabkan oleh SSL?
Bisa berkaitan dengan konfigurasi HTTPS origin, terutama ketika mode SSL/TLS Cloudflare membutuhkan koneksi ke port 443 tetapi origin tidak menerima koneksi tersebut. Periksa juga sertifikat jika menggunakan Full (Strict).
Berapa lama Cloudflare error 521 akan hilang setelah DNS diperbaiki?
Tidak ada waktu yang bisa dijamin untuk semua kondisi. Cloudflare menggunakan TTL otomatis untuk record proxied, tetapi cache resolver lokal dan faktor jaringan lain dapat memengaruhi waktu perubahan terlihat. Jika record sudah benar tetapi Error 521 tetap muncul, lanjutkan pemeriksaan origin dan firewall.
Penutup
Cloudflare error 521 setelah pindah hosting umumnya berkaitan dengan kegagalan Cloudflare membuat koneksi ke origin server. Namun, penyebab pastinya perlu dibuktikan melalui pemeriksaan DNS, web server, port, firewall, dan konfigurasi SSL/TLS.
Urutan yang saya sarankan adalah memastikan IP origin sudah benar, menguji apakah web server berjalan, memeriksa port 80 dan 443, kemudian memastikan firewall tidak memblokir koneksi Cloudflare.
Jika semua pemeriksaan tersebut sudah dilakukan tetapi error masih muncul, kumpulkan waktu kejadian, URL yang bermasalah, Ray ID dari halaman error, dan log jaringan atau web server. Informasi ini akan membantu administrator server maupun provider hosting mempersempit sumber masalah.
Referensi Teknis
Cloudflare – Error 521: Web server is down. Dokumentasi penyebab dan penanganan Error 521.
Cloudflare – Manage DNS records. Panduan memperbarui alamat IP origin pada DNS.
Cloudflare – Proxy status. Penjelasan perbedaan Proxied dan DNS-only.
Cloudflare – Cloudflare IP addresses. Daftar rentang IP Cloudflare untuk konfigurasi allowlist.
Cloudflare – Protect your origin server. Panduan mengamankan origin server.

