502 Bad Gateway, ağ geçidi ya da vekil (proxy) görevi gören bir sunucunun, isteği ilettiği arka uç sunucudan geçersiz bir yanıt aldığını bildiren HTTP durum kodudur. Kısacası bad gateway ne demek sorusunun yanıtı, sunucular arasındaki iletişimde bir kopukluk olduğudur. Sorun çoğunlukla ziyaretçinin cihazından değil, sitenin sunucu tarafından kaynaklanır ve genellikle geçicidir.
502 Bad Gateway Nedir?
Bir web sitesini açtığınızda isteğiniz çoğu zaman tek bir sunucuya gitmez. Önce bir içerik dağıtım ağına, yük dengeleyiciye ya da ters vekil sunucuya ulaşır; bu aracı sunucu da isteği asıl uygulamanın çalıştığı arka uç sunucuya iletir. Arka uç yanıt vermez, hatalı yanıt verir ya da bağlantıyı keserse aracı sunucu ziyaretçiye 502 hatası gösterir.
Error 502 ne demek diye merak edenler için not: hata farklı sitelerde 502 Bad Gateway, HTTP Error 502, 502 Proxy Error ya da Temporary Error (502) gibi farklı biçimlerde görünebilir; hepsi aynı durumu anlatır. 5 ile başlayan kodlar sunucu kaynaklı hataları ifade eder.
502 Bad Gateway Hatası Nedenleri Nelerdir?
- Arka uç sunucunun çalışmaması: Uygulama sunucusu ya da PHP işleyicisi durmuş, çökmüş veya yeniden başlatılıyor olabilir.
- Aşırı yük: Ani trafik artışı ya da kaynak tüketen işlemler nedeniyle sunucu isteklere yetişemeyebilir.
- Zaman aşımı: Uzun süren sorgular ve betikler, aracı sunucunun bekleme süresini aşabilir.
- Hatalı yapılandırma: Yanlış port, soket yolu ya da adres tanımı aracı sunucunun arka uca ulaşmasını engeller.
- Güvenlik duvarı engeli: Güvenlik duvarı ya da koruma servisi sunucular arasındaki trafiği yanlışlıkla engelleyebilir.
- DNS sorunları: Alan adı yanlış IP adresine yönleniyor ya da yeni yapılan DNS değişikliği henüz yayılmamış olabilir.
- Hatalı kod, eklenti ya da tema: Uygulamadaki bir hata arka ucun çökmesine yol açabilir.
- CDN ya da barındırma kaynaklı kesinti: Aracı hizmetin kendisinde geçici bir sorun yaşanıyor olabilir.
502 Bad Gateway Hatası Çözümleri Nelerdir?
Ziyaretçiler için
- Sayfayı yenileyin: Hata çoğu zaman geçicidir; kısa bir süre bekleyip tekrar deneyin.
- Tarayıcı önbelleğini ve çerezleri temizleyin: Eski kayıtlar hatalı sayfanın tekrar gösterilmesine neden olabilir.
- Gizli sekmede ya da farklı tarayıcıda deneyin: Eklenti kaynaklı sorunları ayırt etmenizi sağlar.
- Modemi ve cihazı yeniden başlatın: Yerel ağ kaynaklı geçici sorunları giderir.
- DNS önbelleğini temizleyin ya da DNS sunucusunu değiştirin: Alan adı çözümleme hatalarını ortadan kaldırabilir.
- Sitenin herkes için mi kapalı olduğunu kontrol edin: Farklı bir cihaz ya da mobil veri ile deneyin. Sorun genelse yapılacak şey beklemek ya da site yönetimine haber vermektir.
Site sahipleri için
- Sunucu ve hizmet durumunu kontrol edin: Web sunucusu, uygulama sunucusu ve veritabanı hizmetlerinin çalıştığından emin olun.
- Hata günlüklerini inceleyin: 502 hatası sorununun asıl nedeni çoğunlukla sunucu ve uygulama günlüklerinde yazar.
- Kaynak kullanımına bakın: İşlemci, bellek ve disk dolmuşsa kaynak artırın ya da yükü azaltın.
- Son değişiklikleri geri alın: Hata bir güncelleme ya da yeni eklenti sonrası başladıysa değişikliği geri alıp tekrar deneyin. İçerik yönetim sistemlerinde eklentileri sırayla devre dışı bırakmak sorunu bulmaya yardımcı olur.
- CDN ve güvenlik duvarını geçici olarak devre dışı bırakın: Sorunun aracı hizmetten kaynaklanıp kaynaklanmadığını gösterir.
- DNS kayıtlarını doğrulayın: Alan adının doğru sunucuya yönlendiğini kontrol edin. Alt alan adlarında da aynı kontrol gerekir; subdomain açarken eklenen kayıtlar buna dahildir.
- Zaman aşımı sürelerini gözden geçirin: Uzun süren işlemler için süreleri makul ölçüde artırın, asıl olarak yavaş sorguları iyileştirin.
- Barındırma firmasına ulaşın: Paylaşımlı barındırmada sunucu erişiminiz sınırlıysa destek ekibi en hızlı çözümü sağlar.
Değişiklikleri canlı siteye almadan önce yerel ortamda denemek bu tür hataların önüne geçer; bunun için localhost üzerinde test yapmayı alışkanlık haline getirebilirsiniz.
502 Bad Gateway Nginx Hatası Çözümü
Nginx sıklıkla ters vekil olarak kullanıldığı için 502 Bad Gateway nginx ifadesi en çok görülen hata ekranlarından biridir. Bu durumda Nginx çalışıyor, ancak arkasındaki uygulamaya ulaşamıyor demektir. İzlenebilecek adımlar şunlardır:
- Hata günlüğünü okuyun: Nginx hata günlüğündeki connect() failed, connection refused ya da upstream prematurely closed connection gibi satırlar sorunun türünü gösterir.
- Arka uç hizmetini kontrol edin: PHP-FPM, Node.js, Python ya da kullandığınız uygulama sunucusunun çalıştığını doğrulayın; gerekirse yeniden başlatın.
- Adres ve soket eşleşmesini doğrulayın: Nginx yapılandırmasındaki proxy_pass ya da fastcgi_pass değerinin, arka ucun dinlediği port veya soket yoluyla birebir aynı olduğundan emin olun.
- Soket izinlerini kontrol edin: Unix soketi kullanılıyorsa Nginx kullanıcısının sokete erişim yetkisi olmalıdır.
- İşlemci havuzu ayarlarına bakın: Arka uçtaki işçi süreç sayısı trafiğe yetmiyorsa istekler karşılanamaz.
- Zaman aşımı ve tampon ayarlarını düzenleyin: Uzun yanıt veren ya da büyük başlık gönderen uygulamalarda proxy zaman aşımı ve tampon boyutlarının artırılması gerekebilir.
- Yapılandırmayı test edip yeniden yükleyin: Değişikliklerden sonra yapılandırma testini çalıştırın, hata yoksa Nginx’i yeniden yükleyin.
Yüksek trafikli projelerde bu hataların sık yaşanması altyapının yetersiz kaldığına işaret edebilir; sunucu altyapısı ve barındırma çözümleri hakkındaki yazımız doğru mimariyi seçmenize yardımcı olabilir.
Sonuç
502 Bad Gateway hatası, aracı sunucunun arka uç sunucudan geçerli yanıt alamadığını gösterir. Ziyaretçiler için çözüm çoğunlukla sayfayı yenilemek, önbelleği temizlemek ve biraz beklemektir. Site sahipleri ise hizmetlerin çalışıp çalışmadığını, günlükleri, kaynak kullanımını, DNS ve güvenlik duvarı ayarlarını kontrol etmelidir. Nginx kullanılan sistemlerde arka uç adresinin doğruluğu ve uygulama hizmetinin durumu ilk bakılacak noktalardır.




