502 Gerbang Buruk – Cara Memperbaikinya
Sebagai pengunjung atau pemilik situs web, melihat kesalahan "502 Bad Gateway" mungkin membingungkan karena masalah spesifiknya tidak jelas. Ini adalah kode status HTTP yang populer dan umum. Dengan asumsi koneksi Internet Anda baik-baik saja, melihat pesan ini berarti kemungkinan besar ada masalah komunikasi server. Dan hasilnya adalah Anda tidak melihat halaman web yang Anda minta.
Meskipun kesalahan 502 biasanya merupakan masalah di sisi server, penyebabnya terkadang ada di pihak klien. Dalam artikel ini, kami akan membantu Anda memahami misteri ini dengan mencoba tip sederhana dari sisi klien. Anda akan menyelesaikan masalah atau lebih memahami penyebabnya.
502 Arti Gerbang Buruk
Setiap kali Anda mencoba mengakses halaman web, browser Anda pada dasarnya meminta server web untuk mengakses halaman tersebut. Server web kemudian akan memproses permintaan Anda dan mengembalikan sumber daya yang Anda minta bersama dengan header HTTP dan kode status HTTP.
Tetapi jika ada masalah server, Anda mungkin menerima salah satu dari beberapa 500 kode kesalahan yang berbeda. Semuanya menunjukkan masalah dengan server. Oleh karena itu, kesalahan “502 Bad Gateway” – permintaan dari klien (browser Anda) – baik tetapi server tidak dapat mengembalikan sumber daya yang diminta.
502 Bad Gateway Fix
Berikut adalah beberapa tips yang dapat Anda coba dari browser web Anda untuk hapus kesalahan "502 Bad Gateway" dan tampilkan halaman web Anda.
1. Coba Muat Ulang Halaman
Kesalahan dapat disebabkan oleh kesalahan pada server, bukan karena pemadaman, dan masalah konektivitas server dapat diperbaiki dengan cukup cepat dalam banyak kasus.
Mulai dengan memuat ulang halaman – klik panah melingkar di dekat bilah alamat URL. Di Chrome dan Safari, ada di sebelah kiri, di Firefox ada di sebelah kanan. Tunggu sekitar satu menit sebelum memuat ulang halaman. Jika halaman web ditampilkan, maka masalahnya telah hilang.
Hal cepat lain yang dapat Anda coba adalah membuka sesi browser baru. Tutup semua jendela browser yang terbuka, lalu buka jendela baru dan coba navigasikan ke halaman web lagi.
2. Coba Bersihkan Cache Browser Anda
Browser web Anda menyimpan informasi dari setiap situs web yang Anda kunjungi di cache browser. Setiap kali Anda mengunjungi kembali situs web, halaman dimuat lebih cepat karena browser Anda menggunakan apa yang disimpan di cache.
Namun, pengaturan ini tidak selalu merupakan hal yang baik. Jika cache browser Anda memiliki versi situs web yang kedaluwarsa atau rusak, ini dapat menyebabkan kesalahan 502. Pertimbangkan untuk mengosongkan cache browser Anda untuk mendapatkan versi terbaru dari halaman web yang Anda coba jangkau. Begini caranya:
ChromeDi jendela browser Chrome Anda, klik menu tiga titik di kanan atas. Pilih opsi "Alat Lainnya". Pilih "Hapus Data Penjelajahan ..." Pada pop-up "Hapus data penelusuran", pastikan hanya opsi "Cache images and files" yang dicentang, tentukan rentang waktu, lalu "Clear data." FirefoxDi jendela browser Firefox Anda, klik ikon hamburger di kanan atas. Klik "History." Pilih "Clear Recent History ..." Di sembulan, pada tarik-turun "Rentang waktu untuk menghapus", pilih "Semuanya." Pastikan hanya kotak "Cache" yang dicentang, lalu "Hapus Sekarang."Safari
Untuk mengosongkan cache di browser Safari Anda, tombol " Kembangkan” menu perlu diaktifkan. Untuk melakukan ini:
Buka "Preferences" lalu "Advanced." Centang kotak "Show Develop Menu in Menu Bar". Buka "Develop" lalu "Empty Cache."
502 Bad Gateway di NGINX
PHP-FastCGI Process Manager (PHP-FPM ) adalah proses latar belakang untuk menangani permintaan server web untuk aplikasi PHP. NGINX meneruskan permintaan web ke proses pekerja PHP-FPM yang menjalankan aplikasi PHP. NGINX mengembalikan kesalahan “502 Bad Gateway” ketika tidak berhasil mendelegasikan permintaan ke PHP-FPM atau jika PHP-FPM tidak merespons.
Berikut adalah penyebab paling umum untuk NGINX mengembalikan kesalahan 502:
PHP-FPM tidak running.NGINX tidak dapat berkomunikasi dengan PHP-FPM.PHP-FPM adalah waktu habis.
Sekarang mari kita lihat cara mengonfirmasi apakah salah satu di atas merupakan masalah, dan cara memperbaikinya.
1. Periksa Apakah PHP-FPM Berjalan
Ketika PHP-FPM tidak berjalan, NGINX akan mengembalikan kesalahan 502 ke semua permintaan yang ditujukan untuk mencapai aplikasi PHP. Anda dapat menggunakan perintah “ps” melalui host Linux untuk memeriksa proses PHP-FPM yang sedang berjalan. Perintahnya adalah:
“sudo ps aux | grep ‘php’”.
Jika hasil dari perintah ini tidak menampilkan kumpulan PHP-FPM atau proses utama, PHP-FPM perlu dijalankan untuk memperbaiki kesalahan 502. Untuk membuat aplikasi PHP Anda lebih andal, pertimbangkan untuk menggunakan “systemd” untuk mengelola PHP-FPM sebagai layanan di lingkungan produksi Anda. Proses latar belakang PHP-FPM akan mulai secara otomatis melayani aplikasi PHP Anda setiap kali instance baru dibuka, atau server Anda dimulai.
Karena PHP-FPM sudah ada di dalam kode PHP, Anda dapat menambahkannya sebagai layanan "systemd" saat Anda menyiapkan PHP. Setelah proyek diatur sebagai layanan, gunakan perintah ini untuk memulai otomatis:
“Sudo systemctl enable php7.2–fpm.service”.
2. Periksa Apakah NGINX Memiliki Akses ke Socket
Setelah PHP-FPM dimulai, itu menghasilkan soket Unix atau TCP untuk terhubung ke server web NGINX. Proses pekerja PHP-FPM membutuhkan soket untuk mendengarkan permintaan NGINX. Pastikan PHP-FPM dan NGINX diatur untuk menggunakan socket
PHP-FPM yang sama menggunakan file konfigurasi yang berbeda per kumpulan proses. Untuk menemukan file-file ini, buka:
“/etc/php/7.2/fpm/pool.d/”. Soket
Pool diuraikan dalam instruksi “dengarkan” di file konfigurasinya, mis. instruksi "listen" berikut, konfigurasikan kumpulan yang disebut "mypool" untuk menggunakan soket Unix yang ditemukan di: "/run/php/mypool.sock":
"listen = /run/php/mypool.sock".
Jika NGINX adalah tidak dapat mengakses soket kumpulan, Anda dapat mengetahui kumpulan pekerja mana itu dengan memeriksa soket mana yang ditentukan dalam log kesalahan NGINX. Jika PHP-FPM tidak memulai kumpulan pekerja "mypool", misalnya, NGINX akan mengirimkan kesalahan 502 dan entri log akan terlihat seperti ini:
“Hubungkan () ke unix: :/run/php/mypool. kaus kaki gagal (2: Tidak ada file atau direktori seperti itu)”.
3. Periksa Apakah Waktu Habis PHP-FPM
Jika aplikasi Anda terlalu lama merespons, pengguna akan menerima kesalahan batas waktu. Jika batas waktu PHP-FPM – tetap dalam instruksi konfigurasi kumpulan (“request_terminate_timeout”) – kurang dari batas waktu NGINX, NGINX akan mengembalikan kesalahan 502.
Anda dapat meningkatkan pengaturan batas waktu PHP-FPM di file konfigurasi kumpulan. Namun, ini dapat menyebabkan masalah lain: NGINX dapat kehabisan waktu sebelum mendapatkan respons dari batas waktu default PHP-FPM.
NGINX adalah 60 detik. Jika Anda telah meningkatkan batas waktu PHP-FPM lebih dari 60 detik, dan aplikasi PHP Anda belum sempat merespons, NGINX akan mengeluarkan kesalahan "504 Gateway Timeout". Hindari ini dengan meningkatkan pengaturan batas waktu NGINX Anda.
502 Bad Gateway di Cloudflare
Cloudflare akan mengembalikan kesalahan 502 ketika tidak dapat memulai koneksi yang valid dengan server web sumber situs web Anda atau jika layanan Cloudflare tidak tersedia atau tidak dikonfigurasi dengan benar. Penyebab paling umum termasuk:
Server sumber terlalu banyak bekerja dengan terlalu banyak beban server yang memicu downtime server Situs web WordPress dengan batas memori PHP yang rendah atau terlalu banyak koneksi MYSQL dapat menyebabkan server memuat dengan lambat Catatan DNS yang salah, konflik plugin atau tema di WordPress, dan kegagalan layanan misalnya PHP-FPM dan layanan cache
Cobalah tips berikut untuk mengatasi error “502 Bad Gateway” dari Cloudflare:
1. Muat Ulang Halaman dan Bersihkan Cache
Anda Memuat ulang halaman web harus menjadi hal pertama yang Anda coba untuk setiap pesan kesalahan. Kesalahan 502, khususnya, mungkin akibat server kelebihan beban yang menyebabkan masalah koneksi sementara. Tunggu sekitar satu menit sebelum memuat ulang halaman; ini biasanya menyelesaikannya.
Jika kesalahan 502 masih muncul, bersihkan cache browser Anda lalu coba lagi. Tekan lama Ctrl + F5 untuk browser Windows dan Linux. Untuk Chrome dan Safari di Mac, Cmd + Shift + R.
2. Periksa Plugin/Tema Anda untuk Konflik
Jika Anda menggunakan WordPress, kesalahan 502 mungkin disebabkan oleh plugin yang salah dikonfigurasi. Untuk memecahkan masalah apakah ini penyebabnya, nonaktifkan plugin Anda – tidak ada data yang akan hilang.
Masuk ke akun WordPress Anda.Pilih "Plugins" dari bilah sisi.Terapkan "Nonaktifkan" ke semua plugin Anda.
Jika kesalahan 502 teratasi, maka Anda perlu menemukan plugin mana yang bermasalah. Untuk melakukan ini, aktifkan kembali plugin satu per satu. Setelah mengaktifkan kembali masing-masing, muat ulang halaman web. Ketika kesalahan Cloudflare terjadi lagi, Anda akan tahu plugin mana yang menjadi penyebabnya. Anda dapat meminta bantuan dari pengembang plugin dengan memposting tiket di WordPress.
Pastikan tema dan plugin Anda adalah versi terbaru, dan versi PHP Anda didukung.
3. Nonaktifkan Sementara Firewall Anda dan CDN
Masalahnya dapat disebabkan oleh Jaringan Pengiriman Konten (CDN) atau firewall. Ini adalah masalah umum dengan penyedia dengan lapisan firewall tambahan seperti Cloudflare. Anda dapat memeriksa halaman status online Cloudflare untuk informasi tentang masalah apa pun dengan layanan mereka, atau Anda dapat menghubungi mereka.
Jika dikonfirmasi bahwa masalahnya ada pada firewall atau CDN Anda, coba nonaktifkan sementara, lalu aktifkan setelah.
4. Periksa Server DNS Anda
Terkadang server Domain Name System (DNS) Anda dapat mengembalikan kesalahan 502 karena domain situs web Anda mungkin tidak menunjuk ke alamat IP yang benar. Jika Anda baru saja memindahkan situs web Anda ke layanan hosting lain, maka Anda harus menunggu setidaknya 24 jam agar propagasi di Internet selesai.
Jika tidak demikian, untuk menghapus alamat IP dan catatan DNS lainnya dari Anda cache DNS lokal Anda dapat mencoba membilasnya, berikut caranya:
Luncurkan jendela perintah.Masukkan "ipconfig /flushdns".
Atau melalui Mac:
Buka jendela terminal.Masukkan "dscacheutil -flushcache".
502 Bad Gateway Terpecahkan!
The "502 Bad Pesan kesalahan Gateway” adalah respons standar ketika ada yang salah dengan komunikasi antara server yang terlibat dalam mengembalikan permintaan web Anda. Pesan kesalahan 500 biasanya berarti ada masalah dengan sisi server pertukaran. Namun, terkadang, penyebabnya bisa karena peralatan komputer lokal pengguna dan/atau pengaturan jaringan. Untungnya, ini adalah kesalahan yang sangat umum, dan ada banyak hal yang dapat Anda coba sendiri untuk menampilkan halaman web Anda, atau setidaknya membawa Anda lebih dekat untuk memahami akar masalahnya.
Pesan kesalahan apa lagi yang Anda alami saat mengunjungi halaman web? Apakah masalah terselesaikan? Beri tahu kami di bagian komentar.