“502 bad gateway” di Nginx - 5 Alasan Teratas Untuk Itu dan Cara Mengatasinya

Memelihara server itu sulit karena Anda harus berurusan dengan semua pemutakhiran, patch keamanan dan kesalahan server sesekali. Salah satu kesalahan umum seperti itu di server Nginx adalah “502 Bad Gateway.” Makanya, yuk cari tahu selengkapnya di artikel “502 bad gateway” di Nginx – 5 Alasan Teratas Untuk Itu dan Cara Mengatasinya

502 bad gateaway

Pesan kesalahannya samar. Jadi, banyak master web menyingsingkan lengan baju mereka dan melihat log kesalahan:

2017/04/04 08:34:43 [error] 949#949: *7 connect() failed (111: Connection refused) while connecting to upstream, client: XXX.XXX.XXX.XXX, server: myserver.com, request: “GET /myurl-this/ HTTP/1.0”, subrequest: “/redis-fetch”, upstream: “redis://127.0.0.1:6379”, host: “refserver.com”, referrer: http://referalsite.com/myurl-this/

Berikut ini telah dicantumkan 5 alasan teratas untuk 502 Bad Gateway error dan bagaimana memperbaikinya.

  1. Layanan Backend Gagal

Nginx bergantung pada layanan backend, seperti PHP-FPM, layanan database, dan server cache untuk menjalankan aplikasi web.

Jadi, jika salah satu dari layanan ini macet, Nginx tidak akan mendapatkan data apapun dari mereka yang mengakibatkan kesalahan “502 Bad gateway”.

Alasan kegagalan layanan dapat berkisar dari lonjakan trafik dan batas sumber daya hingga disk errors dan serangan DDoS.

Jika Anda mencurigai layanan backend tidak responsif atau gagal, Anda dapat mencoba mematikan semua proses tidak responsif dan memulai kembali layanan.

Jika layanan restart tidak berhasil, Anda mungkin perlu meminta seseorang untuk melihat lebih dekat pada server health.

  1. Beban Server Tinggi

Alasan paling umum kedua untuk “502 bad gateway” di Nginx adalah rata-rata beban tinggi di server backend.

Kami telah melihat alasan ini untuk lonjakan beban:

  • Tiba-tiba lonjakan trafik situs web.
  • Infeksi malware di server.
  • Mengomentari spam atau eksploitasi kerentanan lainnya.
  • Serangan brutal yang dirancang untuk mengeksploitasi aplikasi web.
  • Bug aplikasi yang menyebabkan kebocoran memori atau memonopoli sumber daya.

Untuk memecahkan masalah beban tinggi, pertama kali kita mencari tahu sumber daya mana yang disalahgunakan (I/O, Memory, CPU atau Net).

  1. Konfigurasi Layanan Salah

Server Nginx Anda dan layanan backend bergantung pada banyak subsistem untuk bekerja dengan baik. Hal ini termasuk resolusi DNS, proses Apache, layanan PHP, server DB, dan lain-lain.

Jika salah satu dari layanan ini memiliki entri konfigurasi yang salah, layanan tersebut akan gagal merespons dan Nginx akan menampilkan kesalahan “502 bad gateway”.

Beberapa masalah konfigurasi yang telah dilihat adalah:

  • Penyelesai DNS salah konfigurasi di Nginx menyebabkan pencarian domain gagal.
  • Detail login DB ditetapkan secara tidak benar setelah migrasi baru-baru ini, memulihkan atau meningkatkan.
  • Kesalahan pengaturan firewall Apache (mod_security) menyebabkan Apache macet.
  • Memori atau batas file salah ditetapkan untuk aplikasi PHP.
  • Batasan kapasitas ditetapkan terlalu ketat sehingga kunjungan sah gagal.
  • ….. dan sebagainya.

Tidak ada cara mudah untuk menemukan kesalahan konfigurasi.

Anda benar-benar perlu memindai log kesalahan dan memperhatikan apa yang disampaikan oleh kesalahan (errors says).

Misalnya. kesalahan ini di sini mengatakan aplikasi PHP mencapai batas maksimum proses (ditentukan oleh pengaturan pm.max_children) diizinkan.

WARNING: [mysite.com] server reached max_children setting (30), consider raising it
ERROR: unable to read what child say: Bad file descriptor (9)

Jika Anda tidak terbiasa dengan pengaturan PHP atau server web, yang terbaik adalah bertanya kepada administrator server.

  1. Port Layanan Diblokir di Firewall

Firewall adalah landasan keamanan server. Tetapi jika tidak diatur dengan benar, firewall ini dapat menyebabkan permintaan yang sah diblokir atau layanan gagal. Misalnya, di server Linux yang menjalankan suite otomatisasi Plesk, Nginx berjalan pada port 80, dan Apache berjalan pada port 7080.

Tetapi firewall secara default memblokir port yang tidak biasa seperti 7080 dan itu akan menyebabkan Nginx tidak dapat terhubung ke Apache.

Hasil? 502 Bad Gateway error.

Masalah seperti itu sering terjadi ketika layanan baru diaktifkan (mis. caching server, Ruby, dan lain-lain) di backend atau selama migrasi atau setelah peningkatan server.

Untuk memperbaikinya, kita melihat pada port apa setiap layanan berjalan menggunakan perintah seperti ini:

#    netstat -lpn

tcp        0      0 0.0.0.0:80      0.0.0.0:*

LISTEN         19785/nginx

tcp6       0      0 :::80               :::*

LISTEN            19785/nginx

  1. Bug Aplikasi Web

Kasus yang jarang terjadi untuk kesalahan “502 Bad Gateway” adalah kesalahan kode aplikasi.

Jika log server web Anda menunjukkan kesalahan yang menakutkan seperti ini, ada kemungkinan kode aplikasi penyedia layanan tidak kompatibel dengan versi server.

[notice] child pid 27831 exit signal

Segmentation fault (11)

Anda harus memeriksa persyaratan software aplikasi Anda dan mengkonfigurasi ulang layanan untuk mencocokkan versi yang diperlukan.

Bagi Anda yang masih bingung bagaimana cara membuat website, tenang saja. Kami pun punya solusinya. Anda bisa langsung cek ke Jetorbit guna memenuhi kebutuhan pembuatan website Anda.

Jetorbit menyediakan web hosting terbaik dan domain murah di tahun 2019 ini. Web hosting adalah tempat untuk membuat website Anda bisa diakses oleh semua pengunjung di seluruh belahan dunia. Agar bisa online dengan mudah dan cepat maka pilihlah web hosting terbaik dengan pengalaman lebih dari 5 tahun. Sedangkan domain adalah identitas dari website Anda agar mudah pengunjung mengingat nama identitas dari website Anda.

Hosting murah bisa didapatkan di Jetorbit tanpa mengurangi kualitas. Jetorbit selalu mengedepankan rasa puas klien dan tercapainya tujuan serta kesuksesan dari website yang ada di dalam Jetorbit. Berbagai macam pilihan web hosting berkualitas bisa Anda coba.

Hosting Indonesia pun telah tersedia. Anda bisa melakukan pemesanan web hosting Indonesia di Jetorbit dengan spesifikasi hosting terbaik.

Tidak hanya pembuatan website saja namun Jetorbit juga dapat membantu Anda untuk membuat aplikasi.

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rata rata rating 4.3 / 5. Jumlah rate 6

Yuk Rate 5 Artikel Ini!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Bagikan:

One response to ““502 bad gateway” di Nginx – 5 Alasan Teratas Untuk Itu dan Cara Mengatasinya”

  1. […] arsitek modern yang cocok untuk membangun aplikasi website modern. Kalian bisa memakai Apache dan Nginx sekaligus sebab sepenuhnya bisa dikelola dengan baik. Selain itu, Laragon juga membuat segalanya […]

Leave a Comment